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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]