diff --git a/OpenTelemetryPlan/09-data-collection-reference.md b/OpenTelemetryPlan/09-data-collection-reference.md index e8e7a253da..20ef33c776 100644 --- a/OpenTelemetryPlan/09-data-collection-reference.md +++ b/OpenTelemetryPlan/09-data-collection-reference.md @@ -858,7 +858,7 @@ by perf-comparison run: | `$service_name` | `service_name` | Filter by service (`service.name`, e.g. `xrpld`) | | `$deployment_environment` | `deployment_environment` | Filter by deployment tier (`local` / `test` / `ci` / `prod`) | | `$xrpl_network_type` | `xrpl_network_type` | Filter by network (`mainnet` / `testnet` / `devnet` / `perf`) | -| `$xrpl_work_item` | `xrpl_work_item` | Filter by perf-iac work item / ticket (e.g. `RIPD-7455`) | +| `$xrpl_work_item` | `xrpl_work_item` | Filter by perf-iac work item / ticket | | `$xrpl_branch` | `xrpl_branch` | Filter by comparison side (`baseline::` / `test:…`) | | `$xrpl_node_role` | `xrpl_node_role` | Filter by node role (`validator` / `peer`) | diff --git a/docker/telemetry/grafana/dashboards/consensus-health.json b/docker/telemetry/grafana/dashboards/consensus-health.json index 3e6b234590..573019cb02 100644 --- a/docker/telemetry/grafana/dashboards/consensus-health.json +++ b/docker/telemetry/grafana/dashboards/consensus-health.json @@ -1404,7 +1404,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/fee-market.json b/docker/telemetry/grafana/dashboards/fee-market.json index c7d0eef388..88166cfe22 100644 --- a/docker/telemetry/grafana/dashboards/fee-market.json +++ b/docker/telemetry/grafana/dashboards/fee-market.json @@ -622,7 +622,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/job-queue.json b/docker/telemetry/grafana/dashboards/job-queue.json index 88347e712d..8d5e4416ab 100644 --- a/docker/telemetry/grafana/dashboards/job-queue.json +++ b/docker/telemetry/grafana/dashboards/job-queue.json @@ -756,7 +756,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/ledger-data-sync.json b/docker/telemetry/grafana/dashboards/ledger-data-sync.json index 83a0f80314..e663d300a6 100644 --- a/docker/telemetry/grafana/dashboards/ledger-data-sync.json +++ b/docker/telemetry/grafana/dashboards/ledger-data-sync.json @@ -2421,7 +2421,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/ledger-operations.json b/docker/telemetry/grafana/dashboards/ledger-operations.json index eb87cba237..3435ebccaa 100644 --- a/docker/telemetry/grafana/dashboards/ledger-operations.json +++ b/docker/telemetry/grafana/dashboards/ledger-operations.json @@ -638,7 +638,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/ledger-sync-health.json b/docker/telemetry/grafana/dashboards/ledger-sync-health.json index 46b527bcad..aa41a0b09c 100644 --- a/docker/telemetry/grafana/dashboards/ledger-sync-health.json +++ b/docker/telemetry/grafana/dashboards/ledger-sync-health.json @@ -5555,7 +5555,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/network-traffic.json b/docker/telemetry/grafana/dashboards/network-traffic.json index 3c4b680707..c0e14cecb8 100644 --- a/docker/telemetry/grafana/dashboards/network-traffic.json +++ b/docker/telemetry/grafana/dashboards/network-traffic.json @@ -1037,7 +1037,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/node-health.json b/docker/telemetry/grafana/dashboards/node-health.json index 9cb75d7f60..838a9836bc 100644 --- a/docker/telemetry/grafana/dashboards/node-health.json +++ b/docker/telemetry/grafana/dashboards/node-health.json @@ -5425,7 +5425,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/overlay-traffic-detail.json b/docker/telemetry/grafana/dashboards/overlay-traffic-detail.json index cb60c3e348..2d23930642 100644 --- a/docker/telemetry/grafana/dashboards/overlay-traffic-detail.json +++ b/docker/telemetry/grafana/dashboards/overlay-traffic-detail.json @@ -1050,7 +1050,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/peer-network.json b/docker/telemetry/grafana/dashboards/peer-network.json index 4984ffb9f5..b2ccefc9bc 100644 --- a/docker/telemetry/grafana/dashboards/peer-network.json +++ b/docker/telemetry/grafana/dashboards/peer-network.json @@ -459,7 +459,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/peer-quality.json b/docker/telemetry/grafana/dashboards/peer-quality.json index 4793561701..df701023e5 100644 --- a/docker/telemetry/grafana/dashboards/peer-quality.json +++ b/docker/telemetry/grafana/dashboards/peer-quality.json @@ -680,7 +680,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/rpc-pathfinding.json b/docker/telemetry/grafana/dashboards/rpc-pathfinding.json index 83c2e7255c..cd5ada4f1b 100644 --- a/docker/telemetry/grafana/dashboards/rpc-pathfinding.json +++ b/docker/telemetry/grafana/dashboards/rpc-pathfinding.json @@ -838,7 +838,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/rpc-performance.json b/docker/telemetry/grafana/dashboards/rpc-performance.json index 05e46c94b3..ba319c31a3 100644 --- a/docker/telemetry/grafana/dashboards/rpc-performance.json +++ b/docker/telemetry/grafana/dashboards/rpc-performance.json @@ -1105,7 +1105,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/transaction-overview.json b/docker/telemetry/grafana/dashboards/transaction-overview.json index c705b27e7d..1b733dcb99 100644 --- a/docker/telemetry/grafana/dashboards/transaction-overview.json +++ b/docker/telemetry/grafana/dashboards/transaction-overview.json @@ -1241,7 +1241,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docker/telemetry/grafana/dashboards/validator-health.json b/docker/telemetry/grafana/dashboards/validator-health.json index 3f7b5021e7..2277061df7 100644 --- a/docker/telemetry/grafana/dashboards/validator-health.json +++ b/docker/telemetry/grafana/dashboards/validator-health.json @@ -1163,7 +1163,7 @@ { "name": "xrpl_work_item", "label": "Work Item", - "description": "Filter by perf-iac work item / ticket (e.g. RIPD-7455)", + "description": "Filter by perf-iac work item / ticket", "type": "query", "query": "label_values(xrpl_work_item)", "datasource": { diff --git a/docs/telemetry-runbook.md b/docs/telemetry-runbook.md index 8afe557b9b..de2eed1196 100644 --- a/docs/telemetry-runbook.md +++ b/docs/telemetry-runbook.md @@ -2081,7 +2081,7 @@ one dashboard set serves every deployment: | Service | `service.name` | xrpld cfg | `xrpld`, `xrpld-validator` | | Network | `xrpl.network.type` | xrpld node | `mainnet`, `testnet`, `devnet`, `perf` | | Environment | `deployment.environment` | collector | `local`, `test`, `ci`, `prod` | -| Work Item | `xrpl.work.item` | perf-iac | `RIPD-7455` (empty outside perf runs) | +| Work Item | `xrpl.work.item` | perf-iac | the work-item key (empty outside perf runs) | | Branch | `xrpl.branch` | perf-iac | `baseline::`, `test::` | | Node Role | `xrpl.node.role` | perf-iac | `validator`, `peer` | diff --git a/src/tests/libxrpl/telemetry/MetricsRegistry.cpp b/src/tests/libxrpl/telemetry/MetricsRegistry.cpp index 5a364b4db2..c737718822 100644 --- a/src/tests/libxrpl/telemetry/MetricsRegistry.cpp +++ b/src/tests/libxrpl/telemetry/MetricsRegistry.cpp @@ -644,14 +644,14 @@ constexpr auto kNow = netTime(800'000'000); constexpr auto kDay = 86'400U; // Ahead of the deadline: ordinary positive readings. -static_assert(Registry::daysUntil(netTime(800'000'000 + 7 * kDay), kNow) == 7.0); -static_assert(Registry::daysUntil(netTime(800'000'000 + kDay / 2), kNow) == 0.5); +static_assert(Registry::daysUntil(netTime(800'000'000 + (7 * kDay)), kNow) == 7.0); +static_assert(Registry::daysUntil(netTime(800'000'000 + (kDay / 2)), kNow) == 0.5); static_assert(Registry::daysUntil(kNow, kNow) == 0.0); // Past the deadline: the readings the unsigned subtraction used to wrap. static_assert(Registry::daysUntil(netTime(800'000'000 - kDay), kNow) == -1.0); -static_assert(Registry::daysUntil(netTime(800'000'000 - kDay / 2), kNow) == -0.5); -static_assert(Registry::daysUntil(netTime(800'000'000 - 30 * kDay), kNow) == -30.0); +static_assert(Registry::daysUntil(netTime(800'000'000 - (kDay / 2)), kNow) == -0.5); +static_assert(Registry::daysUntil(netTime(800'000'000 - (30 * kDay)), kNow) == -30.0); // The sentinel the config path sets for a list that never expires. static_assert( @@ -681,9 +681,9 @@ TEST(MetricsRegistryDaysUntil, readings_decrease_monotonically_as_the_deadline_p // anywhere in that walk is a jump upward, so this fails on the exact // second the old arithmetic went wrong rather than only on sampled points. constexpr auto kHour = 3'600U; - auto previous = Registry::daysUntil(netTime(800'000'000 + 7 * kDay), kNow); + auto previous = Registry::daysUntil(netTime(800'000'000 + (7 * kDay)), kNow); - for (std::uint32_t offset = 7 * kDay - kHour; offset > 0; offset -= kHour) + for (std::uint32_t offset = (7 * kDay) - kHour; offset > 0; offset -= kHour) { auto const ahead = Registry::daysUntil(netTime(800'000'000 + offset), kNow); EXPECT_LT(ahead, previous) << "ahead of deadline by " << offset << "s"; @@ -698,7 +698,7 @@ TEST(MetricsRegistryDaysUntil, readings_decrease_monotonically_as_the_deadline_p } // Ends a full week past the deadline, which is where the wrap was largest. - EXPECT_EQ(Registry::daysUntil(netTime(800'000'000 - 7 * kDay), kNow), -7.0); + EXPECT_EQ(Registry::daysUntil(netTime(800'000'000 - (7 * kDay)), kNow), -7.0); } TEST(MetricsRegistryDaysUntil, never_expires_sentinel_outranks_every_finite_reading)