SlackCarlo PreciadoProblem & solution
From Custom to Open: Scalable Network Probing and HTTP/3 Readiness with Prometheus
Summary
Slack encountered a lack of client-side observability when introducing HTTP/3 at its edge. Because HTTP/3 runs over QUIC on UDP instead of TCP, neither existing commercial SaaS tools nor the internal Prometheus Blackbox Exporter could probe the new endpoints. To address this gap, an engineering intern integrated the open-source quic-go library into Prometheus Blackbox Exporter to build a native, configurable HTTP/3 probe. Slack deployed an internal implementation using the upstream functionality while waiting for pull request reviews, ultimately landing the contribution upstream. The resulting setup provides a unified view of HTTP/1.1, HTTP/2, and HTTP/3 metrics within Grafana, enabling reliable alerting and faster correlation with other telemetry.
Context
Slack began rolling out HTTP/3 at the edge but faced an observability gap: HTTP/3 relies on QUIC over UDP rather than TCP, rendering existing SaaS tools and the Prometheus Blackbox Exporter incapable of probing HTTP/3 endpoints to track regressions or round-trip measurements.
Approach / What changed
Slack intern Sebastian Feliciano integrated the quic-go library into the Prometheus Blackbox Exporter to construct an HTTP/3-capable client adhering to existing configuration patterns. While the contribution was upstreamed to the open-source repository, Slack deployed an in-house system using the new capabilities to probe HTTP/3 endpoints immediately.
Takeaways
Prometheus Blackbox Exporter lacked native QUIC support, preventing network probing of HTTP/3 endpoints over UDP.
Slack selected quic-go to construct a configurable HTTP/3 transport within the Prometheus Blackbox Exporter architecture.
Integrating HTTP/3 probes allowed Slack to combine HTTP/1.1, HTTP/2, and HTTP/3 metrics into a single Grafana dashboard for improved alerting and debugging.
Source and freshness
- Source
- slack.engineering
- Published
- Added to Yomu
- Last updated
Summaries are generated from the original by a language model. Check the original before relying on it.
Keep reading
Related reading
The Good Stuff
Paid picks we use ourselves. Links carry a referral code — a subscription through one earns us a commission at no extra cost to you.
The best engineering reads, once a week
One useful email. Unsubscribe anytime.