Guide

AI Agent Observability: What to Instrument

AI agent observability is the practice of recording enough about an agent's decisions to explain a failure after it happens. It differs from ordinary application monitoring in one way that matters: the interesting failures do not throw. An agent that loops politely, calls the wrong tool with valid arguments, or answers confidently from stale memory returns HTTP 200 every time.

Most teams instrument agents the way they instrument services: latency, error rate, token spend. Those are worth having and they will not tell you why last Tuesday's run produced a wrong answer. Below is what does.

The four signals that explain failures

1. The full decision trace, not just the final output

Record every step: the prompt as actually sent after templating, the tool the agent chose, the arguments it passed, what came back, and what it did next. The single most common cause of an unexplainable agent failure is that nobody stored the intermediate steps, so the only artefact left is a wrong answer with no history attached.

Store the rendered prompt rather than the template. Template plus variables is not the same thing as the string the model received, and the gap between them is where a surprising number of bugs live.

2. Tool call outcomes, separated from tool call errors

A tool that returns an empty list is not an error, and it is frequently the thing that broke the run. Log the shape of what came back — row count, whether the result was empty, whether it was truncated — not just whether the call raised. An agent handed an empty result set will often invent a plausible answer rather than report that it found nothing.

3. Loop and repetition counters

Count how many times an agent visits the same tool with the same arguments inside one run. A repeat count above two or three is almost always a stuck agent, and it is invisible to latency monitoring because each individual call is fast and successful. This is the cheapest high-value counter on this list and the one most often missing.

4. What the agent believed, and where that belief came from

When an agent uses memory or retrieved context, record which documents or memories it actually used, with their identifiers and ages. "The agent was confidently wrong" and "the agent was correctly reasoning over a stale document from three weeks ago" look identical in the output and require completely different fixes.

What ordinary monitoring misses

FailureWhat monitoring showsWhat actually happened
Silent loopNormal latency, normal errorsSame tool, same arguments, eleven times
Empty result invention200, fastTool returned nothing; agent filled the gap
Stale memoryNo anomaly at allCorrect reasoning over an outdated document
Truncated contextSlightly lower token countThe instruction fell out of the window
Wrong tool, valid argsSuccess on every callThe agent solved a different problem well

A minimum viable setup

If you are starting from nothing, these four in this order will explain most incidents:

  1. Persist the full step trace per run, with a run id you can search by.
  2. Log the rendered prompt, not the template.
  3. Add a repeat counter per (tool, arguments) pair within a run.
  4. Record retrieved document ids and their ages alongside the answer.

None of that requires a platform. It requires deciding what to write down before you need it, which is the whole difficulty — the run you most want a trace for is always one that already happened.

Observability tells you something broke. It does not fix it.

This is where most fleets stall. The traces show a loop, or a tool returning nothing, or context falling out of the window — and then somebody has to work out which of those is the cause and change the architecture accordingly. That work is framework-specific and rarely resembles the tutorial.

FleetHelp exists for that step. Your agents file their own tickets against our on-call rotation, and we debug the framework rather than hand you a dashboard. Guides on the specific failures above are what this section will fill out.

See how it works