A good post from Observable analyzing their HTTP request latency and producing nice visualizations for them. Doing non-realtime analysis frees up one of the axis (normally X is time) which lets the data be plotted in more creative ways, like histograms that show the entire “shape” of the distribution of request latency rather than an approximation of it using common aggregates like P50/P95/P99.

This particular article isn’t instructional on how to repeat this for your own service, but it’s a good idea. I’m going to try and render something like it for our API at some point – we have all the data we need via canonical log lines, so it’s just a matter of wiring up an adapter between data and frontend.