# Does OpenTelemetry capture the model's output when a GenAI call ends in an error?

Only if the call actually produced output before it failed. A clarification merged into the GenAI semantic conventions this week spells out what was previously ambiguous: `gen_ai.output.messages`, the attribute carrying what the model generated, should only be set on a failed operation when that operation produced output, including a partial streamed response cut off mid-way. Instrumentation is explicitly told not to synthesize output content to fill the attribute when nothing was actually generated.

The inputs and instructions the model received are a separate matter and stay recorded regardless of how the call ended, since those existed before the failure. The same clarification also tightened the content-upload hook so it receives the exact instructions, inputs, and outputs instrumentation would otherwise record, not a reconstructed version.

These conventions are still marked in development, so a clarification like this can land without a version bump. [Who decides what content leaves an agent's traces](/answers/instrumentation/who-decides-what-content-leaves-an-agents-traces) in the first place is a separate, earlier decision this one builds on.

---

Sources:
- OpenTelemetry semantic-conventions-genai, PR #459, "Clarify failed GenAI content capture": https://github.com/open-telemetry/semantic-conventions-genai/pull/459 (fetched 2026-10-06)

Source: https://tessary.ai/answers/otel-genai-conventions/does-opentelemetry-capture-output-on-a-failed-genai-call
More on Otel genai conventions: https://tessary.ai/answers/otel-genai-conventions
From Tessary, agent reliability for AI agents in production: https://tessary.ai
