mirror of
https://github.com/XRPLF/rippled.git
synced 2026-09-27 07:26:51 +00:00
The panel described itself as showing which categories consume the most receive bandwidth, and told operators to watch for a category dominating during ongoing sync, but it ranked raw cumulative counters. That ranks by lifetime total, so a sync burst days earlier still dominates the bars and the stated guidance cannot work. Wrapping the existing selector in rate() does not work: rate() drops __name__, so the many *_bytes_in series collapse to one labelset and the query fails with "vector cannot contain metrics with the same labelset". Grouping with sum by (__name__) does not help either, because Prometheus strips __name__ from aggregation output regardless of the grouping. Both were tried against a local Prometheus with synthetic multi-category counters and both error. Instead recover the category into a normal `series` label before rating, and use a subquery so the renamed series can be rated. Verified against the same synthetic data: rates match a plain single-metric rate control to within subquery resolution, ranking order is correct, and both the category and node labels survive. Also set unit to Bps, matching the ten sibling rate panels in this dashboard (this was the only byte panel still on decbytes and the only one plotting raw), and drop "Heatmap" from the title since the panel is a bargauge. Note the subquery evaluates the selector at several steps, so it costs more than the previous instant query across the traffic categories.