TL;DR
Observability, evals and red teaming answer three different questions about an AI system. Observability shows what did happen with real users. Evals check what should happen on cases you already know. Red teaming searches for what could happen when someone tries to make the system fail. Each one has blind spots the other two cover, so teams that ship reliable AI agents run all three and connect them: red-team findings become evals and monitors, and production failures become new evals.
What each one is
Observability
Observability records how your AI system behaves in production: every prompt, retrieval, model call, tool call and response, linked into traces, plus metrics such as latency, cost and error rates. When something goes wrong, it lets you go back to the exact run and see why. Our complete guide to AI agent observability covers it in depth. Comet sums up the split neatly: observability supplies the evidence, and evaluation delivers the judgment (Comet).
Evals
Evals score outputs against criteria you define, such as correctness, groundedness, format or policy compliance. Offline evals run on a curated test set before each release, like unit tests for AI behavior. Online evals score a sample of live traffic, usually without a reference answer (OpenObserve). Either way, an eval can only check for problems you thought to write down. Hallucination checks are a common example; see hallucination detection in production agents.
Red teaming
Red teaming attacks the system on purpose to find the failures nobody wrote a test for: prompt injection, policy bypass, data leaks, goal hijacking and slow multi-turn manipulation. For agents, it tests what the agent does with its tools and permissions, not just what it says. It is adversarial by design, and good red teaming adapts its attacks to the specific agent in front of it. Our explainer on what is AI agent red teaming covers how it works for agents.
Side by side
| Observability | Evals | Red teaming | |
| Core question | What happened, and why? | Does it meet our bar on known cases? | How can it be made to fail? |
| Inputs | Real user traffic | Curated test sets, plus samples of live traffic | Adversarial attacks, often adaptive and multi-turn |
| When it runs | Continuously in production | Before every release, and on a schedule | Before launch, after major changes, and continuously for high-risk agents |
| Output | Traces, metrics, alerts | Scores and pass/fail results | Findings with severity and reproduction steps |
| Who usually owns it | Platform or SRE team | AI engineers | Security or AI safety team |
| Typical tools | Tracing and monitoring platforms | Eval frameworks and judge models | Red-teaming platforms and attack libraries |
What each one catches, and what it misses
| Failure | Observability | Evals | Red teaming |
| Quality regression after a prompt or model change | Eventually, once users hit it | Yes, before release | Sometimes |
| A new kind of user request the agent handles badly | Yes | Only after you add a test for it | Rarely |
| Cost spikes and tool loops | Yes | Rarely | Sometimes |
| Prompt injection through a document or tool output | Only if it happens in production and you’re watching for it | Only for injections you already wrote down | Yes |
| Policy bypass through rephrasing or slow escalation | After the damage | Only known patterns | Yes |
| Data leaks and actions outside the agent’s permissions | After the damage | Only known patterns | Yes |
| Drift in behavior over weeks | Yes | Yes, if evals run on a schedule | No |
The pattern is clear. Observability is strongest on the unexpected things real users do, but it only sees failures after they happen. Evals are strongest at stopping known problems from coming back, but they only check what you thought to test. Red teaming is strongest on deliberate, adversarial failures, but it doesn’t watch live traffic. Treating any one as a substitute for the others leaves a gap; for example, strong eval results say little about how a system holds up against someone actively trying to break it (Cloudpano).
One agent, three failures
Take a refund agent for an online store. Over one quarter, it fails three times, and each failure is caught by a different practice.
Failure 1: a prompt change breaks partial refunds. An engineer rewrites the system prompt to make replies friendlier. The new prompt accidentally stops the agent from offering partial refunds. The pre-release eval suite includes a partial-refund case, which fails, and the change never ships.
Failure 2: customers start asking about gift cards. A new promotion leads customers to request refunds to gift cards, a flow the agent was never built for. It improvises badly. No eval covers it, because nobody imagined it. Observability catches it: escalations climb, and the traces show the agent calling the wrong tool.
Failure 3: a customer talks the agent past its limit. Over several messages, a customer reframes a large refund as several small “adjustments” until the agent approves more than its limit allows. Production traffic hasn’t shown this yet, and no eval tests it. Red teaming finds it before launch, by running exactly this kind of slow, multi-step attack.
Each failure then feeds the others: failures 2 and 3 become new eval cases, and failure 3 also becomes a production monitor that alerts on any refund above the limit.
How the three fit together
The value isn’t in running all three side by side. It’s in the handoffs between them.

observability, evals and red teaming · one loop
- Red teaming → evals. Every confirmed finding becomes a regression test, so a fixed weakness can’t quietly come back. This is the core of automated red teaming for AI agents.
- Red teaming → observability. The same finding becomes a production monitor, so if the pattern ever appears in real traffic, someone gets alerted.
- Evals → observability. Only builds that pass the eval suite ship to production.
- Observability → evals. Failures that real users find become new test cases.
- Observability → red teaming. A new model, tool, data source or user pattern is a signal to attack the agent again.
Over time, your eval suite grows from both directions: from attacks that found something and from production incidents. Structure those cases so they can run automatically on every release.
Where to start
If you can’t do all three at once, sequence them by where your agent is in its life:
| Stage | Start with | Why |
| Prototype | Evals | A small set of known cases tells you if the agent works at all |
| Before launch | Red teaming | Find the adversarial failures before real users and attackers do |
| In production | Observability | See what real users do that you never imagined |
| Every release after | All three, connected | Evals gate releases, red teaming re-tests changes, observability watches the result |
Agents that take real actions, such as moving money, changing records or sending messages, should get red teaming before launch no matter what. The cost of finding a policy bypass in production is a lot higher than finding it in a test run. For what to watch once you’re in production, see AI agent monitoring: what to track.
The bottom line
Observability, evals and red teaming aren’t competing options. They answer different questions: what happened, does it meet the bar, and how could it break. Run only one and you’ll have a large blind spot; connect all three and every failure you find, in testing or in production, becomes a check that runs from then on.
Find what’s broken in your agents before your users do. BotGauge connects red teaming, evals and monitoring for AI agents in one loop.Try Botgauge for Free or book a 30-minute demo.
What is the difference between LLM observability and evaluation?
Observability records what your AI system actually did on real requests, through traces, logs and metrics. Evaluation scores whether outputs were good, against criteria you define. Observability gives you the evidence; evaluation gives you the judgment.
What is the difference between red teaming and evaluation?
Evaluation checks performance on known, expected cases. Red teaming deliberately attacks the system to find failures nobody anticipated, such as prompt injection, policy bypass and data leaks.
Do I need both evals and observability?
Yes. Evals catch known problems before release; observability catches unexpected problems in production. Each covers the other’s blind spot.
Does observability replace testing?
No. Observability only sees failures after real users trigger them. Evals and red teaming find failures before release, which matters most for agents that take real actions.
Which should I start with?
Start with evals while prototyping, add red teaming before launch, and add observability once real users arrive. After launch, connect all three so findings from each feed the others.
