Pewarta Proxy

📋 Server Request & Proxy Logs

Loading active proxy settings...
Developed by Khairul Adha (adhexa.id)
Mengambil log server...

⚙️ Pengaturan Proxy Target

Skip to content

Show connector errors in the profiler - #7491

Open
Karakatiza666 wants to merge 1 commit into
mainfrom
profiler-connector-errors
Open

Karakatiza666 wants to merge 1 commit into
mainfrom
profiler-connector-errors

Conversation

@Karakatiza666

@Karakatiza666 Karakatiza666 commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

The support bundle viewer shows the errors of a connector, as the web console does for a running pipeline.

  • ConnectorErrors moves to common-ui. It takes the connector status as a prop and picks the error lists by direction.
  • The web console keeps a thin ConnectorErrors wrapper. It fetches the status from the API and renders the shared component.
  • The Connectors tab opens the errors of a connector in a drawer. The profiler reads the status from stats.json of the bundle.
  • The Connectors tab label shows the number of connector errors.
  • countConnectorErrors in common-ui sums the error counters of all connectors.

Bundles that were collected before the pipeline manager added include_connector_errors have no error lists. They show "No errors".

Testing

  • New tests for countConnectorErrors, the shared ConnectorErrors component, the errors drawer of the Connectors tab, the error count on the tab label, and the web console wrapper. Each test fails when the code that it covers is broken.

@Karakatiza666
Karakatiza666 added this pull request to stack #7313 October 15, 2026 00:02
{:else if displayItems.length === 0}
<div class="p-2 text-surface-500">
{#if tagsFilter === 'all'}
No errors

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pitfall (medium): For a bundle collected before include_connector_errors, the tab label shows e.g. Connectors 3 and the table shows the error icon, but clicking it says "No errors". That is misleading during triage. When the status has no parse_errors/encode_errors/transport_errors key at all (undefined, not []), say something like "This bundle was collected without connector error details" instead.

@mythical-fred-oss

Copy link
Copy Markdown
Contributor

LGTM. One medium UX pitfall is noted inline: old bundles show an error count on the tab but "No errors" in the drawer.

What I ran

Check Result
profiler-layout vitest: ConnectorErrors, ConnectorsTab, countConnectorErrors, SupportBundleViewerLayout specs (browser) 61/61 pass
web-console vitest editor/performance/ 78/78 pass
svelte-check profiler-layout / common-ui 0 errors
pre-commit run --files <changed> pass

Gates: tests cover the moved component, the wrapper, the drawer and the badge. No flaky patterns, no new deps, no docs needed (internal viewer). The move preserves the old behaviour; the only change is that the error lists are now picked by direction instead of 'parse_errors' in s, which is more robust.

Not covered (low): a test where the drawer is open and the timestamp changes to a bundle where that connector has errors, i.e. drawer reset plus re-open on the new snapshot. The existing "closes when the bundle changes" test mostly covers this.

@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from d4b27e0 to 467b305 Compare October 15, 2026 00:25
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch 2 times, most recently from 27314e1 to 678f25e Compare October 15, 2026 17:34
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch 2 times, most recently from 409468e to d94170a Compare October 16, 2026 13:15
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch 2 times, most recently from 3306901 to 5292c73 Compare October 16, 2026 13:50
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from 5292c73 to 25003e8 Compare October 16, 2026 15:46
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from 25003e8 to ece8323 Compare October 16, 2026 16:35
@Karakatiza666
Karakatiza666 marked this pull request as ready for review October 16, 2026 19:47
@mythical-fred-oss

Copy link
Copy Markdown
Contributor

LGTM — the shared ConnectorErrors in common-ui, the bundle drawer, and the error count on the tab label all look correct. The manager already collects stats.json with include_connector_errors=true, and parseConnectorStatus keeps the error lists.

What I ran Result
bun run test-unit (profiler-layout) 251/251 pass
vitest web-console editor/performance 78/78 pass
New profiler specs run 5× in a row (flakiness check) 59/59 pass every run
pre-commit run --files <changed> pass

Gates: tests ✅, flakiness ✅ (no sleeps; async checks use expect.poll/expect.element), commit message ✅, docs n/a (the bundle viewer has no docs page), no new dependencies.

tech-debt (medium, pre-existing, not introduced here): The fetch $effect in the web-console wrapper has no .catch and no guard against stale responses.

  • If the status request fails, the drawer shows "Loading…" forever.
  • If the user clicks connector A and then B, and A's response arrives last, A's errors appear under B's header.

Now that the component is shared, this is a cheap follow-up fix: drop the response if the props have changed, and set loading = false on error.

connectorName.slice(getCaseDependentName(relationName).name.length + 1)
)

type DisplayItem = { kind: 'error'; error: ConnectorError } | { kind: 'gap'; count: number }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is "gap" a set of missing messages?
Please document this.

return result
}

function getErrorArrays(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

getConnectorErrors?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

document the result type, I suspect it maps a connector name to a list of errors

filter: ConnectorErrorFilter
} | null>(null)

// A new bundle or timestamp closes the drawer of the previous connector.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't understand why this comment is here

@@ -0,0 +1,174 @@
/** The Connectors tab opens the errors of a connector from its statistics, in a drawer. */

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is a test file, the comments should reflect that.

@@ -0,0 +1,80 @@
import { aggregateConnectorMetrics, countConnectorErrors } from 'common-ui/connectorMetrics'

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how come we didn't have such tests before for the main display?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably those features got merged before I started the extensive automated test coverage

@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch 2 times, most recently from 4227452 to c8df28a Compare October 26, 2026 11:57
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from c8df28a to bb022b6 Compare October 26, 2026 12:18
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from bb022b6 to a24c6ab Compare October 26, 2026 12:30
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from a24c6ab to f191e71 Compare October 26, 2026 13:06
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from f191e71 to f5203f2 Compare October 26, 2026 13:25
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from f5203f2 to 78c983e Compare October 26, 2026 13:33
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch 2 times, most recently from 8233d18 to 4d3e529 Compare October 26, 2026 14:27
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from 4d3e529 to 2b8be45 Compare October 26, 2026 15:47
@Karakatiza666
Karakatiza666 enabled stacked auto-merge October 26, 2026 15:51
@Karakatiza666
Karakatiza666 added this pull request to the merge queue Oct 26, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue because a pull request earlier in the stack was removed Oct 26, 2026
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from 2b8be45 to a7359b5 Compare October 26, 2026 17:17
@Karakatiza666
Karakatiza666 added this pull request to the merge queue Oct 27, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue because a pull request earlier in the stack was removed Oct 27, 2026
@Karakatiza666
Karakatiza666 added this pull request to the merge queue Oct 28, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue because a pull request earlier in the stack was removed Oct 28, 2026
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from a7359b5 to 2a9c4a9 Compare October 28, 2026 15:49
@Karakatiza666
Karakatiza666 added this pull request to the merge queue Oct 28, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue because a pull request earlier in the stack was removed Oct 28, 2026
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from 2a9c4a9 to f27b20c Compare October 28, 2026 17:39
@Karakatiza666
Karakatiza666 added this pull request to the merge queue Oct 28, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue because a pull request earlier in the stack was removed Oct 29, 2026
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from f27b20c to f76497c Compare October 29, 2026 05:09
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch 2 times, most recently from 32a951d to b118cb9 Compare October 30, 2026 15:58
Base automatically changed from profiler-source-files to main October 30, 2026 19:27
Show the errors of a connector in the support bundle viewer, as the
web console does for a running pipeline.

- Move ConnectorErrors to common-ui. It takes the connector status as a
  prop and picks the error lists by direction.
- Keep a thin ConnectorErrors wrapper in the web console. It fetches
  the status from the API and renders the shared component.
- Open the errors of a connector in a drawer on the Connectors tab. The
  profiler reads the status from stats.json of the bundle.
- Show the number of connector errors on the Connectors tab label.
- Add countConnectorErrors to common-ui.

Bundles that were collected before the pipeline manager added
include_connector_errors have no error lists. They show "No errors".
@Karakatiza666
Karakatiza666 force-pushed the profiler-connector-errors branch from b118cb9 to 6b8e6d5 Compare October 30, 2026 19:27

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants