refactor(telemetry): rename system-* dashboards to bare names, drop redundant prefix

Rename the 5 system-* dashboard files to bare domain names (uid ==
filename stem) and update all doc references. The system- prefix was
redundant now that titles no longer carry a recorder-pipeline suffix.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Pratik Mankawde
2026-07-04 02:45:39 +01:00
parent 78fb08ef38
commit 2c590a47c5
8 changed files with 42 additions and 42 deletions

View File

@@ -100,7 +100,7 @@ Controlled by `trace_rpc=1` in `[telemetry]` config.
**Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"rpc.http_request|rpc.command.*"}` **Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"rpc.http_request|rpc.command.*"}`
**Grafana dashboard**: _RPC Performance_ (`xrpld-rpc-perf`) **Grafana dashboard**: _RPC Performance_ (`rpc-performance`)
#### gRPC Spans #### gRPC Spans
@@ -116,7 +116,7 @@ rates without TraceQL attribute filters.
**Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"grpc.*"}` **Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"grpc.*"}`
**Grafana dashboard**: _RPC Performance_ (`xrpld-rpc-perf`) **Grafana dashboard**: _RPC Performance_ (`rpc-performance`)
#### Transaction Spans #### Transaction Spans
@@ -140,7 +140,7 @@ later spans — the `stage` attribute identifies where it stopped.
**Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"tx.process|tx.receive"}` **Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"tx.process|tx.receive"}`
or, for the apply pipeline: `{resource.service.name="xrpld" && name=~"tx.preflight|tx.preclaim|tx.transactor"}` or, for the apply pipeline: `{resource.service.name="xrpld" && name=~"tx.preflight|tx.preclaim|tx.transactor"}`
**Grafana dashboard**: _Transaction Overview_ (`xrpld-transactions`) **Grafana dashboard**: _Transaction Overview_ (`transaction-overview`)
#### Transaction Queue (TxQ) Spans #### Transaction Queue (TxQ) Spans
@@ -157,7 +157,7 @@ Controlled by `trace_transactions=1` in `[telemetry]` config.
**Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"txq.*"}` **Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"txq.*"}`
**Grafana dashboard**: _Transaction Overview_ (`xrpld-transactions`) **Grafana dashboard**: _Transaction Overview_ (`transaction-overview`)
#### Consensus Spans #### Consensus Spans
@@ -185,7 +185,7 @@ round trace via context propagation rather than direct parenting. The
**Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"consensus.*"}` **Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"consensus.*"}`
**Grafana dashboard**: _Consensus Health_ (`xrpld-consensus`) **Grafana dashboard**: _Consensus Health_ (`consensus-health`)
#### Ledger Spans #### Ledger Spans
@@ -199,7 +199,7 @@ Controlled by `trace_ledger=1` in `[telemetry]` config.
**Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"ledger.*"}` **Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"ledger.*"}`
**Grafana dashboard**: _Ledger Operations_ (`xrpld-ledger-ops`) **Grafana dashboard**: _Ledger Operations_ (`ledger-operations`)
#### Peer Spans #### Peer Spans
@@ -212,7 +212,7 @@ Controlled by `trace_peer` in `[telemetry]` config. **Enabled by default** (high
**Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"peer.*"}` **Where to find**: Tempo → TraceQL: `{resource.service.name="xrpld" && name=~"peer.*"}`
**Grafana dashboard**: _Peer Network_ (`xrpld-peer-net`) **Grafana dashboard**: _Peer Network_ (`peer-network`)
#### PathFind Spans #### PathFind Spans
@@ -519,7 +519,7 @@ prefix=xrpld
| `xrpld_Overlay_Peer_Disconnects_Charges` | OverlayImpl.cpp | Disconnects due to resource limit charges | Low growth (subset of above) | | `xrpld_Overlay_Peer_Disconnects_Charges` | OverlayImpl.cpp | Disconnects due to resource limit charges | Low growth (subset of above) |
| `xrpld_job_count` | JobQueue.cpp | Current job queue depth | 0100 (healthy) | | `xrpld_job_count` | JobQueue.cpp | Current job queue depth | 0100 (healthy) |
**Grafana dashboard**: _Node Health_ (`xrpld-system-node-health`) **Grafana dashboard**: _Node Health_ (`node-health`)
### 2.2 Counters ### 2.2 Counters
@@ -533,7 +533,7 @@ prefix=xrpld
**Note**: With `server=otel`, `xrpld_warn` and `xrpld_drop` are properly exported as OTel Counter instruments. The previous StatsD `|m` type limitation no longer applies. **Note**: With `server=otel`, `xrpld_warn` and `xrpld_drop` are properly exported as OTel Counter instruments. The previous StatsD `|m` type limitation no longer applies.
**Grafana dashboard**: _RPC & Pathfinding_ (`xrpld-system-rpc`) **Grafana dashboard**: _RPC & Pathfinding_ (`rpc-pathfinding`)
### 2.3 Histograms (Event timers) ### 2.3 Histograms (Event timers)
@@ -575,7 +575,7 @@ For each of the 45+ overlay traffic categories (defined in `TrafficCount.h`), fo
| `ping` / `status` | Keepalive and status | | `ping` / `status` | Keepalive and status |
| `set_get` | Set requests | | `set_get` | Set requests |
**Grafana dashboards**: _Network Traffic_ (`xrpld-system-network`), _Overlay Traffic Detail_ (`xrpld-system-overlay-detail`), _Ledger Data & Sync_ (`xrpld-system-ledger-sync`) **Grafana dashboards**: _Network Traffic_ (`network-traffic`), _Overlay Traffic Detail_ (`overlay-traffic-detail`), _Ledger Data & Sync_ (`ledger-data-sync`)
--- ---
@@ -585,23 +585,23 @@ For each of the 45+ overlay traffic categories (defined in `TrafficCount.h`), fo
### 3.1 Span-Derived Dashboards (5) ### 3.1 Span-Derived Dashboards (5)
| Dashboard | UID | Data Source | Key Panels | | Dashboard | UID | Data Source | Key Panels |
| -------------------- | -------------------- | ------------------------ | ---------------------------------------------------------------------------------- | | -------------------- | ---------------------- | ------------------------ | ---------------------------------------------------------------------------------- |
| RPC Performance | `xrpld-rpc-perf` | Prometheus (SpanMetrics) | Request rate by command, p95 latency by command, error rate, heatmap, top commands | | RPC Performance | `rpc-performance` | Prometheus (SpanMetrics) | Request rate by command, p95 latency by command, error rate, heatmap, top commands |
| Transaction Overview | `xrpld-transactions` | Prometheus (SpanMetrics) | Processing rate, latency p95/p50, local vs relay split, apply duration, heatmap | | Transaction Overview | `transaction-overview` | Prometheus (SpanMetrics) | Processing rate, latency p95/p50, local vs relay split, apply duration, heatmap |
| Consensus Health | `xrpld-consensus` | Prometheus (SpanMetrics) | Round duration p95/p50, proposals rate, close duration, mode timeline, heatmap | | Consensus Health | `consensus-health` | Prometheus (SpanMetrics) | Round duration p95/p50, proposals rate, close duration, mode timeline, heatmap |
| Ledger Operations | `xrpld-ledger-ops` | Prometheus (SpanMetrics) | Build rate, build duration, validation rate, store rate, build vs close comparison | | Ledger Operations | `ledger-operations` | Prometheus (SpanMetrics) | Build rate, build duration, validation rate, store rate, build vs close comparison |
| Peer Network | `xrpld-peer-net` | Prometheus (SpanMetrics) | Proposal receive rate, validation receive rate, trusted vs untrusted breakdown | | Peer Network | `peer-network` | Prometheus (SpanMetrics) | Proposal receive rate, validation receive rate, trusted vs untrusted breakdown |
### 3.2 System Metrics Dashboards (5) ### 3.2 System Metrics Dashboards (5)
| Dashboard | UID | Data Source | Key Panels | | Dashboard | UID | Data Source | Key Panels |
| ---------------------- | ----------------------------- | ----------------- | --------------------------------------------------------------------------------- | | ---------------------- | ------------------------ | ----------------- | --------------------------------------------------------------------------------- |
| Node Health | `xrpld-system-node-health` | Prometheus (OTLP) | Ledger age, operating mode, I/O latency, job queue, fetch rate | | Node Health | `node-health` | Prometheus (OTLP) | Ledger age, operating mode, I/O latency, job queue, fetch rate |
| Network Traffic | `xrpld-system-network` | Prometheus (OTLP) | Active peers, disconnects, bytes in/out, messages in/out, traffic by category | | Network Traffic | `network-traffic` | Prometheus (OTLP) | Active peers, disconnects, bytes in/out, messages in/out, traffic by category |
| RPC & Pathfinding | `xrpld-system-rpc` | Prometheus (OTLP) | RPC rate, response time/size, pathfinding duration, resource warnings/drops | | RPC & Pathfinding | `rpc-pathfinding` | Prometheus (OTLP) | RPC rate, response time/size, pathfinding duration, resource warnings/drops |
| Overlay Traffic Detail | `xrpld-system-overlay-detail` | Prometheus (OTLP) | Squelch, overhead, validator lists, set get/share, have/requested tx, proof paths | | Overlay Traffic Detail | `overlay-traffic-detail` | Prometheus (OTLP) | Squelch, overhead, validator lists, set get/share, have/requested tx, proof paths |
| Ledger Data & Sync | `xrpld-system-ledger-sync` | Prometheus (OTLP) | Ledger data exchange, legacy ledger share/get, getobject by type, traffic heatmap | | Ledger Data & Sync | `ledger-data-sync` | Prometheus (OTLP) | Ledger data exchange, legacy ledger share/get, getobject by type, traffic heatmap |
### 3.3 Deployment-Tier Template Variables ### 3.3 Deployment-Tier Template Variables

View File

@@ -583,5 +583,5 @@
"to": "now" "to": "now"
}, },
"title": "Ledger Data & Sync", "title": "Ledger Data & Sync",
"uid": "xrpld-system-ledger-sync" "uid": "ledger-data-sync"
} }

View File

@@ -861,5 +861,5 @@
"to": "now" "to": "now"
}, },
"title": "Network Traffic", "title": "Network Traffic",
"uid": "xrpld-system-network" "uid": "network-traffic"
} }

View File

@@ -1017,5 +1017,5 @@
"to": "now" "to": "now"
}, },
"title": "Node Health", "title": "Node Health",
"uid": "xrpld-system-node-health" "uid": "node-health"
} }

View File

@@ -643,5 +643,5 @@
"to": "now" "to": "now"
}, },
"title": "Overlay Traffic Detail", "title": "Overlay Traffic Detail",
"uid": "xrpld-system-overlay-detail" "uid": "overlay-traffic-detail"
} }

View File

@@ -702,5 +702,5 @@
"to": "now" "to": "now"
}, },
"title": "RPC & Pathfinding", "title": "RPC & Pathfinding",
"uid": "xrpld-system-rpc" "uid": "rpc-pathfinding"
} }

View File

@@ -432,7 +432,7 @@ Reads from the `ValidationTracker` (Task 7.8) to export rolling window stats.
**Task 9.11: Validator Health Dashboard** **Task 9.11: Validator Health Dashboard**
New Grafana dashboard: `xrpld-validator-health.json` New Grafana dashboard: `validator-health.json`
| Panel | Type | PromQL | | Panel | Type | PromQL |
| -------------------------- | ---------- | -------------------------------------------------------------- | | -------------------------- | ---------- | -------------------------------------------------------------- |
@@ -456,7 +456,7 @@ New Grafana dashboard: `xrpld-validator-health.json`
**Task 9.12: Peer Quality Dashboard** **Task 9.12: Peer Quality Dashboard**
New Grafana dashboard: `xrpld-peer-quality.json` New Grafana dashboard: `peer-quality.json`
| Panel | Type | PromQL | | Panel | Type | PromQL |
| ---------------------- | ---------- | -------------------------------------------------------------- | | ---------------------- | ---------- | -------------------------------------------------------------- |
@@ -471,7 +471,7 @@ New Grafana dashboard: `xrpld-peer-quality.json`
**Task 9.13: Ledger Economy Dashboard Panels** **Task 9.13: Ledger Economy Dashboard Panels**
Add a "Ledger Economy" row to the existing `system-node-health.json` dashboard: Add a "Ledger Economy" row to the existing `node-health.json` dashboard:
| Panel | Type | PromQL | | Panel | Type | PromQL |
| -------------------- | ---------- | --------------------------------------------------- | | -------------------- | ---------- | --------------------------------------------------- |
@@ -526,8 +526,8 @@ Add checks to `validate_telemetry.py` for all new span attributes and metrics.
| Dashboard | | Dashboard |
| ------------------------------ | | ------------------------------ |
| `xrpld-validator-health` | | `validator-health` |
| `xrpld-peer-quality` | | `peer-quality` |
| `system-node-health` (updated) | | `system-node-health` (updated) |
**New metric value sanity checks (~4)**: **New metric value sanity checks (~4)**:

View File

@@ -601,7 +601,7 @@ three signals' attributes over OTLP directly.
Ten dashboards are pre-provisioned in `docker/telemetry/grafana/dashboards/`: Ten dashboards are pre-provisioned in `docker/telemetry/grafana/dashboards/`:
### RPC Performance (`xrpld-rpc-perf`) ### RPC Performance (`rpc-performance`)
| Panel | Type | PromQL | Labels Used | | Panel | Type | PromQL | Labels Used |
| --------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------------ | | --------------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ------------------------ |
@@ -614,7 +614,7 @@ Ten dashboards are pre-provisioned in `docker/telemetry/grafana/dashboards/`:
| Top Commands by Volume | bargauge | `topk(10, ...)` by `command` | `command` | | Top Commands by Volume | bargauge | `topk(10, ...)` by `command` | `command` |
| WebSocket Message Rate | stat | `rpc.ws_message` rate | — | | WebSocket Message Rate | stat | `rpc.ws_message` rate | — |
### Transaction Overview (`xrpld-transactions`) ### Transaction Overview (`transaction-overview`)
| Panel | Type | PromQL | Labels Used | | Panel | Type | PromQL | Labels Used |
| --------------------------------- | ---------- | ------------------------------------------------------------------------------------ | ------------- | | --------------------------------- | ---------- | ------------------------------------------------------------------------------------ | ------------- |
@@ -627,7 +627,7 @@ Ten dashboards are pre-provisioned in `docker/telemetry/grafana/dashboards/`:
| Peer TX Receive Rate | timeseries | `tx.receive` rate | — | | Peer TX Receive Rate | timeseries | `tx.receive` rate | — |
| TX Apply Failed Rate | stat | `tx.apply` with `STATUS_CODE_ERROR` | `status_code` | | TX Apply Failed Rate | stat | `tx.apply` with `STATUS_CODE_ERROR` | `status_code` |
### Consensus Health (`xrpld-consensus`) ### Consensus Health (`consensus-health`)
| Panel | Type | PromQL | Labels Used | | Panel | Type | PromQL | Labels Used |
| ----------------------------- | ---------- | ---------------------------------------------------------------------------------- | ---------------- | | ----------------------------- | ---------- | ---------------------------------------------------------------------------------- | ---------------- |
@@ -642,7 +642,7 @@ Ten dashboards are pre-provisioned in `docker/telemetry/grafana/dashboards/`:
| Validation vs Close Rate | timeseries | `consensus.validation.send` vs `consensus.ledger_close` | — | | Validation vs Close Rate | timeseries | `consensus.validation.send` vs `consensus.ledger_close` | — |
| Accept Duration Heatmap | heatmap | `consensus.accept` histogram buckets | `le` | | Accept Duration Heatmap | heatmap | `consensus.accept` histogram buckets | `le` |
### Ledger Operations (`xrpld-ledger-ops`) ### Ledger Operations (`ledger-operations`)
| Panel | Type | PromQL | Labels Used | | Panel | Type | PromQL | Labels Used |
| ----------------------- | ---------- | ---------------------------------------------- | ----------- | | ----------------------- | ---------- | ---------------------------------------------- | ----------- |
@@ -655,7 +655,7 @@ Ten dashboards are pre-provisioned in `docker/telemetry/grafana/dashboards/`:
| Ledger Store Rate | stat | `ledger.store` call rate | — | | Ledger Store Rate | stat | `ledger.store` call rate | — |
| Build vs Close Duration | timeseries | p95 `ledger.build` vs `consensus.ledger_close` | — | | Build vs Close Duration | timeseries | p95 `ledger.build` vs `consensus.ledger_close` | — |
### Peer Network (`xrpld-peer-net`) ### Peer Network (`peer-network`)
Requires `trace_peer=1` in the `[telemetry]` config section. Requires `trace_peer=1` in the `[telemetry]` config section.
@@ -666,7 +666,7 @@ Requires `trace_peer=1` in the `[telemetry]` config section.
| Proposals Trusted vs Untrusted | piechart | by `proposal_trusted` | `proposal_trusted` | | Proposals Trusted vs Untrusted | piechart | by `proposal_trusted` | `proposal_trusted` |
| Validations Trusted vs Untrusted | piechart | by `validation_trusted` | `validation_trusted` | | Validations Trusted vs Untrusted | piechart | by `validation_trusted` | `validation_trusted` |
### Node Health -- System Metrics (`xrpld-system-node-health`) ### Node Health -- System Metrics (`node-health`)
| Panel | Type | PromQL | Labels Used | | Panel | Type | PromQL | Labels Used |
| -------------------------------------- | ---------- | --------------------------------------------------------------- | ----------- | | -------------------------------------- | ---------- | --------------------------------------------------------------- | ----------- |
@@ -687,7 +687,7 @@ Requires `trace_peer=1` in the `[telemetry]` config section.
| All Jobs Execution Time (Detail) | timeseries | `{__name__=~"xrpld_<all_jobs>", quantile="$quantile"}` | `quantile` | | All Jobs Execution Time (Detail) | timeseries | `{__name__=~"xrpld_<all_jobs>", quantile="$quantile"}` | `quantile` |
| All Jobs Dequeue Wait (Detail) | timeseries | `{__name__=~"xrpld_<all_jobs>_q", quantile="$quantile"}` | `quantile` | | All Jobs Dequeue Wait (Detail) | timeseries | `{__name__=~"xrpld_<all_jobs>_q", quantile="$quantile"}` | `quantile` |
### Network Traffic -- System Metrics (`xrpld-system-network`) ### Network Traffic -- System Metrics (`network-traffic`)
| Panel | Type | PromQL | Labels Used | | Panel | Type | PromQL | Labels Used |
| ------------------------------------ | ---------- | ------------------------------------------ | ----------- | | ------------------------------------ | ---------- | ------------------------------------------ | ----------- |
@@ -702,7 +702,7 @@ Requires `trace_peer=1` in the `[telemetry]` config section.
| Duplicate Traffic (Wasted Bandwidth) | timeseries | `rate(xrpld_*_duplicate_Bytes_In/Out[5m])` | — | | Duplicate Traffic (Wasted Bandwidth) | timeseries | `rate(xrpld_*_duplicate_Bytes_In/Out[5m])` | — |
| All Traffic Categories (Detail) | timeseries | `topk(15, rate(xrpld_*_Bytes_In[5m]))` | — | | All Traffic Categories (Detail) | timeseries | `topk(15, rate(xrpld_*_Bytes_In[5m]))` | — |
### RPC & Pathfinding -- System Metrics (`xrpld-system-rpc`) ### RPC & Pathfinding -- System Metrics (`rpc-pathfinding`)
| Panel | Type | PromQL | Labels Used | | Panel | Type | PromQL | Labels Used |
| ------------------------- | ---------- | ------------------------------------------------------ | ----------- | | ------------------------- | ---------- | ------------------------------------------------------ | ----------- |