Skip to main content

Colouring service map nodes by absolute error rate

Demo by @MikeShi42
We had feedback that it was hard to tell which services actually had errors on the service map. Every node was some shade of red, including services with zero errors. The colours were also relative to the current graph, so the service with the highest error rate always got the darkest red—even if its error rate was only 0.3%. Error rate now uses four fixed states:
  • 0%: cool grey
  • Above 0%, below 1%: light red
  • 1% to below 5%: medium red
  • 5% and above: dark red
A service with no traffic shows as an empty circle. A service with traffic and no errors is grey. If you see red, there are errors. The grey matters here. On a 32px node, pale pink and slightly darker pink look almost identical. Cool grey is much easier to distinguish, and the three reds come from the existing palette. The legend now shows discrete steps, with ≥5% at the top. That threshold is shared with the tooltip’s existing alarm colour, so the two stay consistent. Latency and throughput still use relative scales, where a useful threshold depends on the workload. There’s a trade-off: 6% and 60% now get the same colour. The tooltip still gives you the exact percentage. A proportional donut could show more detail, but that’s a larger change. We also don’t currently have the data for a success, 4xx, 5xx and throttle breakdown; the source exposes OpenTelemetry’s Ok, Error and Unset statuses. The thresholds are fixed for now. Per-source overrides would be a useful follow-up—a service with a 99.9% SLO and a batch job have different ideas of an acceptable error rate. Related PRs: #3125 Color service map nodes by absolute error-rate thresholds
Last modified on September 24, 2026