Skip to main content

Module http_handler_metrics

Module http_handler_metrics 

Source
Expand description

Prometheus metrics for the HTTP handler-thread pool.

Slice 4 of issue #573 / parent #569. Exposes four series per ADR-0017 (Prometheus / Grafana adapters) so operators can observe saturation arriving before the cap is hit:

  • http_active_handler_threads{transport} — gauge, sourced from HttpConnectionLimiter::current() at scrape time.
  • http_handler_cap{transport} — static gauge, sourced from the limiter’s cap. Same value for http and https since slice 3 collapsed both transports onto one cap.
  • http_handler_rejected_total{transport, reason} — counter, incremented per 503 emitted by the accept-loop reject path (reason=cap_exhausted) or per slice-2 deadline exit (reason=handler_timeout).
  • http_handler_duration_seconds{transport} — histogram of total handler wall-clock time, sampled on every handler exit (happy-path and timeout). Buckets are the standard Prometheus client default set so existing dashboards render quantiles via histogram_quantile without configuration.

Counters and histogram updates are plain AtomicU64 operations on the hot path. No registry, no mutex.

Structs§

HttpHandlerMetrics

Enums§

HttpRejectReason
HttpTransport