64 docs indexed
All obleth Prometheus metrics with types, labels, and example queries.
Metrics are exposed at http://localhost:9091/metrics in the standard Prometheus text format.
| Metric | Type | Labels | Description |
|---|---|---|---|
obleth_requests_total | Counter | admission, status | Total requests by admission class and HTTP status |
admission values: fast (admitted immediately), queued (waited in queue for a slot), rejected (turned away by a budget check).
status values: 2xx, 4xx, 5xx.
| Metric | Type | Labels | Description |
|---|---|---|---|
obleth_input_tokens_total | Counter | — | Total input tokens processed |
obleth_output_tokens_total | Counter | — | Total output tokens processed |
| Metric | Type | Labels | Description |
|---|---|---|---|
obleth_ttft_ms | Histogram | — | Time to first token (ms) |
obleth_total_ms | Histogram | — | Total request duration (ms) |
obleth_ttft_ms buckets cover 5ms to 5,000ms. obleth_total_ms buckets cover 10ms to 30,000ms.
| Metric | Type | Labels | Description |
|---|---|---|---|
obleth_in_flight | Gauge | — | Current concurrent in-flight requests |
obleth_queue_depth | Gauge | — | Requests currently waiting in the admission queue |
| Metric | Type | Labels | Description |
|---|---|---|---|
obleth_telemetry_dropped | Gauge | — | Telemetry records dropped because the async channel was full |
obleth_upstream_attempts_total | Counter | outcome | Upstream dispatch attempts by outcome |
outcome values: success (usable response), retry (retryable failure, more
attempts remain on the endpoint), timeout (per-request timeout hit), failover
(endpoint exhausted, moved to the next endpoint), exhausted (all endpoints and
attempts failed → 502/504). See Reliability & Failover.
| Metric | Type | Labels | Description |
|---|---|---|---|
obleth_cache_lookups_total | Counter | result | Cache lookups by result (hit, miss) |
obleth_cache_tokens_saved_total | Counter | — | Output tokens served from cache (not billed to upstream) |
obleth_compression_tokens_saved_total | Counter | — | Input tokens saved by the compression boon |
| Metric | Type | Labels | Description |
|---|---|---|---|
obleth_mcp_requests_total | Counter | server, status | MCP proxied requests by server name and status |
rate(obleth_requests_total[5m])
rate(obleth_requests_total{admission="queued"}[5m])
/ rate(obleth_requests_total[5m])
histogram_quantile(0.95, rate(obleth_ttft_ms_bucket[5m]))
rate(obleth_cache_lookups_total{result="hit"}[5m])
/ rate(obleth_cache_lookups_total[5m])
rate(obleth_upstream_attempts_total{outcome="failover"}[5m])
# prometheus.yml
scrape_configs:
- job_name: obleth
static_configs:
- targets: ['localhost:9091']
With Prometheus Operator (Helm serviceMonitor.enabled=true):
serviceMonitor:
enabled: true
interval: 15s
path: /metrics
port: metrics