You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by "wu-sheng (via GitHub)" <gi...@apache.org> on 2026/06/18 11:05:03 UTC
[PR] fix(layer): jump-to-trace + copy on record widgets [skywalking-horizon-ui]
wu-sheng opened a new pull request, #58:
URL: https://github.com/apache/skywalking-horizon-ui/pull/58
## Why
The Slow Statements / record widgets — Virtual Database, Virtual Cache, and similar `record`-type widgets — advertised *"click to drill into the originating trace"*, but that drill-in never worked: the trace id never reached the UI. The BFF selected only `id` / `value` / `owner` from the MQE response and dropped the per-sample trace, so the tip promised something the widget couldn't do.
## What
- **BFF** — OAP's MQE exposes `traceID` on each `RECORD_LIST` sample (`metrics-v3.graphqls`). Select it and forward it per row, **omitted when the sample has none** (records are sampled, so the trace can legitimately be absent).
- **UI** — record widgets now render via a dedicated `RecordList`:
- a **jump-to-trace icon at the row head, shown only when the sample carries a trace id**, opening the trace in the global popout. It resolves the trace **by id, not by layer**, so it works even when the trace belongs to a service on another layer (a virtual-target layer has no traces tab of its own).
- the **statement text is click-to-copy**.
- **Compare mode** keeps the plain `TopList` (no single trace to jump to).
- **Bundled templates** — corrected the Virtual Database / Virtual Cache slow-record tips (English + all 7 locale overlays) to describe the copy + trace-icon interaction instead of the old "click to drill" wording.
- **Docs** — `docs/components/dashboard-widgets.md` `record` behavior section updated to match.
## Validation
- `type-check` · `lint` · `license` (0 invalid) · `i18n:validate` (no findings) · **232 unit tests** · UI + BFF builds — all green.
- OAP wire contract confirmed: `type MQEValue { … traceID: ID }` exists in `metrics-v3.graphqls` — not invented.
- Validated against the public **demo OAP**: a `virtual_database` slow-SQL sample's trace resolves globally (it belongs to `agent::songs`, GENERAL layer, 21 spans), confirming the by-id cross-layer jump. The single-service appearance of these traces is expected — the virtual database is a conjectural peer that emits no spans.
- The bundled-template + i18n changes in this PR were also **pushed to the demo OAP** (16 rows) and verified byte-equal to the repo.
## Screenshots
<!-- Slow Statements widget showing the per-row jump-to-trace icon (only on rows that carry a trace id) — placeholder, attach -->
<!-- Click-to-copy on a statement row — placeholder, attach -->
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@skywalking.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] fix(layer): jump-to-trace + copy on record widgets [skywalking-horizon-ui]
Posted by "wu-sheng (via GitHub)" <gi...@apache.org>.
wu-sheng merged PR #58:
URL: https://github.com/apache/skywalking-horizon-ui/pull/58
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@skywalking.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org