Traces & request records
Every call through the gateway becomes an inspectable record — tokens, cost, latency, provider, guardrail results, cache and routing. Read it in the dashboard or pull it via the API.
What every request record carries
Each request is stored as a trace/request record you can open in the dashboard (Observability → Requests) or fetch from the API. A single record includes:
| Field | Description |
|---|---|
model, provider, provider_type | Model id, real provider brand, and provider_type (cloud_direct, bedrock, self_hosted…). |
tokens_in / tokens_out / cached_tokens | Input, output, and cached token counts — always from the provider's usage, never a local estimate. |
cost_usd, latency_ms, finish_reason | Cost in USD, wall-clock latency in milliseconds, and the completion finish reason. |
cache_hit, routing_mode, region | Whether a cache was hit, the routing mode (realtime / batch / cached), and the processing region. |
session_id, guardrails | The session id the call belongs to and the full guardrail result set (injection / PII / content / policy). |
Cost is shown in your account's display currency; per-request sub-cent costs render as < $0.01 with the exact value on hover.
Observe per-call without a second request
The same telemetry rides every completion response as the _anoman block plus X-Anoman-* transparency headers — so you can observe every call inline, with no follow-up API request.
_anoman block
Headers
Streaming responses carry the same block in a final meta event before the stream closes — see Streaming for the wire format.
List and inspect records
Use GET /anoman/v1/traces to list records (filter by model, region, or agent) and GET /anoman/v1/traces/{id} for a single record with its span timeline.
List
Detail
Group requests into agent sessions
Requests that share a session_id (and an agent_id) are grouped into sessions. List sessions, open one for detail, or pull its actions to see the tool-call and guardrail-check timeline within that session.
Sessions
Actions
Where the data lives
Records are backed by the ClickHouse llm_requests table with 365-day retention. Older records age out automatically.
Related: For rolled-up spend and quota, see Usage & Costs. For the same events as they happen, see the Live Feed.
See every call
Open the Requests view and inspect any trace end to end.