From a998b80f7b0c87b3cc330f3b149ae4fe3806af08 Mon Sep 17 00:00:00 2001 From: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com> Date: Fri, 10 Jul 2026 18:21:56 +0100 Subject: [PATCH 1/2] fix(telemetry): seed $node dashboard filter from target_info Seed the $node template variable from target_info instead of a signal-specific metric. Signal metrics only list nodes that emit that specific signal, so nodes (e.g. Alloy-collected ones) were missing from the dropdown and every panel. target_info is emitted for every node, so all nodes are always selectable. Panels already filter on service_instance_id=~"$node", so no panel changes are needed. Co-Authored-By: Claude Opus 4.8 (1M context) --- docker/telemetry/grafana/dashboards/consensus-health.json | 2 +- docker/telemetry/grafana/dashboards/ledger-operations.json | 2 +- docker/telemetry/grafana/dashboards/peer-network.json | 2 +- docker/telemetry/grafana/dashboards/rpc-performance.json | 2 +- docker/telemetry/grafana/dashboards/transaction-overview.json | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docker/telemetry/grafana/dashboards/consensus-health.json b/docker/telemetry/grafana/dashboards/consensus-health.json index 8ef89ade27..72eac8871b 100644 --- a/docker/telemetry/grafana/dashboards/consensus-health.json +++ b/docker/telemetry/grafana/dashboards/consensus-health.json @@ -1036,7 +1036,7 @@ "label": "Node", "description": "Filter by rippled node (service.instance.id — e.g. Node-1)", "type": "query", - "query": "label_values(traces_span_metrics_calls_total, service_instance_id)", + "query": "label_values(target_info, service_instance_id)", "datasource": { "type": "prometheus", "uid": "prometheus" diff --git a/docker/telemetry/grafana/dashboards/ledger-operations.json b/docker/telemetry/grafana/dashboards/ledger-operations.json index cb980bca7a..2cf30b1f16 100644 --- a/docker/telemetry/grafana/dashboards/ledger-operations.json +++ b/docker/telemetry/grafana/dashboards/ledger-operations.json @@ -387,7 +387,7 @@ "label": "Node", "description": "Filter by rippled node (service.instance.id — e.g. Node-1)", "type": "query", - "query": "label_values(traces_span_metrics_calls_total, service_instance_id)", + "query": "label_values(target_info, service_instance_id)", "datasource": { "type": "prometheus", "uid": "prometheus" diff --git a/docker/telemetry/grafana/dashboards/peer-network.json b/docker/telemetry/grafana/dashboards/peer-network.json index f223b48349..56f0d756d8 100644 --- a/docker/telemetry/grafana/dashboards/peer-network.json +++ b/docker/telemetry/grafana/dashboards/peer-network.json @@ -221,7 +221,7 @@ "label": "Node", "description": "Filter by rippled node (service.instance.id — e.g. Node-1)", "type": "query", - "query": "label_values(traces_span_metrics_calls_total, service_instance_id)", + "query": "label_values(target_info, service_instance_id)", "datasource": { "type": "prometheus", "uid": "prometheus" diff --git a/docker/telemetry/grafana/dashboards/rpc-performance.json b/docker/telemetry/grafana/dashboards/rpc-performance.json index b766c9704f..9fe962e6a3 100644 --- a/docker/telemetry/grafana/dashboards/rpc-performance.json +++ b/docker/telemetry/grafana/dashboards/rpc-performance.json @@ -486,7 +486,7 @@ "label": "Node", "description": "Filter by rippled node (service.instance.id — e.g. Node-1)", "type": "query", - "query": "label_values(traces_span_metrics_calls_total, service_instance_id)", + "query": "label_values(target_info, service_instance_id)", "datasource": { "type": "prometheus", "uid": "prometheus" diff --git a/docker/telemetry/grafana/dashboards/transaction-overview.json b/docker/telemetry/grafana/dashboards/transaction-overview.json index 42e56b25c7..db70919e0a 100644 --- a/docker/telemetry/grafana/dashboards/transaction-overview.json +++ b/docker/telemetry/grafana/dashboards/transaction-overview.json @@ -916,7 +916,7 @@ "label": "Node", "description": "Filter by rippled node (service.instance.id — e.g. Node-1)", "type": "query", - "query": "label_values(traces_span_metrics_calls_total, service_instance_id)", + "query": "label_values(target_info, service_instance_id)", "datasource": { "type": "prometheus", "uid": "prometheus" From 086c85fb2c0a58ea6a28c03ae1b4b33213fbd183 Mon Sep 17 00:00:00 2001 From: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com> Date: Fri, 10 Jul 2026 18:21:59 +0100 Subject: [PATCH 2/2] fix(telemetry): seed $node dashboard filter from target_info Seed the $node template variable from target_info instead of a signal-specific metric. Signal metrics only list nodes that emit that specific signal, so nodes (e.g. Alloy-collected ones) were missing from the dropdown and every panel. target_info is emitted for every node, so all nodes are always selectable. Panels already filter on service_instance_id=~"$node", so no panel changes are needed. Co-Authored-By: Claude Opus 4.8 (1M context) --- docker/telemetry/grafana/dashboards/ledger-data-sync.json | 2 +- docker/telemetry/grafana/dashboards/network-traffic.json | 2 +- docker/telemetry/grafana/dashboards/node-health.json | 2 +- docker/telemetry/grafana/dashboards/overlay-traffic-detail.json | 2 +- docker/telemetry/grafana/dashboards/rpc-pathfinding.json | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docker/telemetry/grafana/dashboards/ledger-data-sync.json b/docker/telemetry/grafana/dashboards/ledger-data-sync.json index 5dc3165001..a52043d8ef 100644 --- a/docker/telemetry/grafana/dashboards/ledger-data-sync.json +++ b/docker/telemetry/grafana/dashboards/ledger-data-sync.json @@ -561,7 +561,7 @@ "label": "Node", "description": "Filter by rippled node (service.instance.id)", "type": "query", - "query": "label_values(ledger_data_get_bytes_in, service_instance_id)", + "query": "label_values(target_info, service_instance_id)", "datasource": { "type": "prometheus", "uid": "prometheus" diff --git a/docker/telemetry/grafana/dashboards/network-traffic.json b/docker/telemetry/grafana/dashboards/network-traffic.json index 16483a871f..f600c58889 100644 --- a/docker/telemetry/grafana/dashboards/network-traffic.json +++ b/docker/telemetry/grafana/dashboards/network-traffic.json @@ -839,7 +839,7 @@ "label": "Node", "description": "Filter by rippled node (service.instance.id)", "type": "query", - "query": "label_values(peer_finder_active_inbound_peers, service_instance_id)", + "query": "label_values(target_info, service_instance_id)", "datasource": { "type": "prometheus", "uid": "prometheus" diff --git a/docker/telemetry/grafana/dashboards/node-health.json b/docker/telemetry/grafana/dashboards/node-health.json index 98e223e896..a21bb2d574 100644 --- a/docker/telemetry/grafana/dashboards/node-health.json +++ b/docker/telemetry/grafana/dashboards/node-health.json @@ -964,7 +964,7 @@ "label": "Node", "description": "Filter by rippled node (service.instance.id)", "type": "query", - "query": "label_values(ledgermaster_validated_ledger_age, service_instance_id)", + "query": "label_values(target_info, service_instance_id)", "datasource": { "type": "prometheus", "uid": "prometheus" diff --git a/docker/telemetry/grafana/dashboards/overlay-traffic-detail.json b/docker/telemetry/grafana/dashboards/overlay-traffic-detail.json index eec4c908f6..a66cd4520f 100644 --- a/docker/telemetry/grafana/dashboards/overlay-traffic-detail.json +++ b/docker/telemetry/grafana/dashboards/overlay-traffic-detail.json @@ -621,7 +621,7 @@ "label": "Node", "description": "Filter by rippled node (service.instance.id)", "type": "query", - "query": "label_values(squelch_messages_in, service_instance_id)", + "query": "label_values(target_info, service_instance_id)", "datasource": { "type": "prometheus", "uid": "prometheus" diff --git a/docker/telemetry/grafana/dashboards/rpc-pathfinding.json b/docker/telemetry/grafana/dashboards/rpc-pathfinding.json index 495d83db12..28f9a51ad5 100644 --- a/docker/telemetry/grafana/dashboards/rpc-pathfinding.json +++ b/docker/telemetry/grafana/dashboards/rpc-pathfinding.json @@ -682,7 +682,7 @@ "label": "Node", "description": "Filter by rippled node (service.instance.id)", "type": "query", - "query": "label_values(rpc_requests_total, service_instance_id)", + "query": "label_values(target_info, service_instance_id)", "datasource": { "type": "prometheus", "uid": "prometheus"