feat(proxy): add request IDs, tracing spans, and observability hooks

Generate UUID v4 request IDs per request, create manual tracing spans
(Pingora types don't impl Debug), record Prometheus metrics for
detection decisions and request totals, and forward X-Request-Id to
both upstream requests and downstream responses.

Signed-off-by: Sienna Meridian Satterwhite <sienna@sunbeam.pt>
This commit is contained in:
2026-03-10 23:38:20 +00:00
parent 1ae185b5a5
commit 0fd10110ff
3 changed files with 283 additions and 6 deletions

View File

@@ -52,6 +52,9 @@ dns-lookup = "2"
# Prometheus metrics
prometheus = "0.13"
# Request IDs
uuid = { version = "1", features = ["v4"] }
# Rustls crypto provider — must be installed before any TLS init
rustls = { version = "0.23", features = ["aws-lc-rs"] }