A high-performance, lightweight HTTP proxy that extracts labels from PromQL labels and converts them into upstream HTTP headers. Built with Rust for sub-millisecond latency and memory safety.
- Intercepting the
/api/v1/queryand/api/v1/query_rangerequests. - Parsing the PromQL into an Abstract Syntax Tree (AST).
- Extracting a specific label (e.g.,
env). - Injecting that value as a header before forwarding the request to the upstream storage.
- True AST Parsing: Uses
promql-parserto navigate complex queries, including nested functions, aggregations, and binary expressions.