Skip to main content
Once you call trace.init(), Veritrix silently instruments your agent runtime without any additional code. Every LLM call, tool execution, and agent handoff produces a structured span that appears in your Veritrix dashboard in real time. There is nothing else to configure.

Auto-instrumented span types

Veritrix captures four span types out of the box. You do not need to create, open, or close spans manually.
Emitted for every call made to a large language model. Captures the full prompt, the completion, input and output token counts, wall-clock latency, and the final status of the call.
Emitted whenever an agent invokes a tool or function (web search, code execution, database lookup, etc.). Captures the tool name, the input arguments, the return value, and latency.
Emitted when one agent passes control to another — for example, a coordinator delegating a subtask to a specialist agent. Captures the source agent, the target agent, and the payload passed between them.
Emitted for each retry of a failed LLM call. Captures the retry count, the error that triggered the retry, and the final outcome so you can diagnose reliability issues without noise in your llm.call spans.
No manual span creation is needed. Veritrix instruments your agent automatically as long as trace.init() has been called before any agent code runs.

Span payload fields

Every span — regardless of type — carries the following fields.

Example span payload

The JSON below is a real llm.call span from a reviewer agent that failed to parse a model response.
Filter your dashboard by status: fail to quickly surface all erroring spans across every agent in a project.

Trace-level metadata

In addition to individual spans, Veritrix attaches metadata to the top-level trace that groups all spans from a single agent run.

Viewing traces in the dashboard

Open app.veritrix.xyz and select your project. The Traces tab lists every run in reverse chronological order. Click any trace to see a waterfall view of its spans, token usage, and error details.
Traces are streamed to the dashboard in real time, but the dashboard may buffer up to 5 seconds under high ingest load. If a trace does not appear immediately, wait a moment and refresh.