Docs · 12

Testing, logs and observability

What a run records: steps, edges, generations, tool calls, retrievals, memory activity, conversation storage, analytics and usage.

Every message creates a run, and every run is fully recorded.

Runs. Status, timing, input and output, token usage (actual when the provider reports it, estimated otherwise), cost, the workflow version, and the checkpoint reference for resuming.

Steps. One per node, with its context report: what the node did, how much history and knowledge it kept, what it trimmed and why, and how long it took. Runtime housekeeping steps are shown as internal.

Edges. What moved from one node to the next.

Generations. Each model call: provider and model, the exact messages sent (system prompt, history, memory and knowledge context, tool results), the raw request settings, the response, finish reason, latency, time to first token, tokens and cost.

Tool calls. Each call with its input, output, status, duration, retries and errors, plus what the model was shown of the result.

Retrievals. The query, candidates, scores, the selected chunks and their text, what was trimmed for the prompt, and whether a source chunk has changed since.

Memory reads and writes. Which items were considered and selected, and which candidates were extracted.

Conversation storage. The run detail shows how much the conversation occupies as stored, split into logs, checkpoints and shared retrieved text.

Runs can be filtered by app, agent, status and time under Runs, and Analytics summarises agents, tools, conversations and costs. Usage reports daily and monthly consumption per app.