See every chain step, tool call, retriever hit, and LLM invocation in OpenAI Agents SDK agents — without rewriting your code, without adding a proxy to the request path.
The problem
OpenAI Agents SDK is great at what it does, but production-grade observability is bring-your-own. Most teams discover this when the first production incident hits, the first OpenAI bill arrives, or the first auditor asks for evidence.
Specifically:
- Built-in tracing is OpenAI-platform-bound and developer-focused
- No native cross-vendor model support in traces
- Policy enforcement (approval flows, spend caps) is bring-your-own
How Prefactor solves it
Prefactor wraps your OpenAI Agents SDK Agent and adds observability as a runtime layer. Specifically:
- debug a failing production run in minutes
- trace search by userid or sessionid
- p95 latency analysis across agents
- investigate why an agent picked a specific tool
- A/B test prompts or models on real traffic
Install and integrate
pip install prefactor-openai-agents
from openai_agents import Agent, run
from prefactor import Prefactor
pf = Prefactor(api_key="pf_live_...")
agent = pf.wrap(Agent(...), agent_id="customer-support-v1")
result = await run(agent, input="...")
Specific use cases
- Debug a failing production run in minutes
- Trace search by userid or sessionid
- P95 latency analysis across agents
- Investigate why an agent picked a specific tool
- A/b test prompts or models on real traffic
FAQ
Does this add latency? Per-span instrumentation adds ~2-5ms. Telemetry ships asynchronously. No synchronous network call in the agent's hot path unless you enable blocking policy enforcement.
Can I configure this per-agent? Yes. Observability settings are per-agent — different agents can have different policies, sampling rates, retention, etc.
Is this compatible with other observability tools? Yes. Prefactor exports OpenTelemetry; works alongside Datadog, Langfuse, LangSmith, and others.
Related
Start free
[Get started free →] [Book a demo →]