auto_instrument(); choose one setup.
What you get
This is the option that captures the agent, not just the model call. If you instead point
your OpenAI-compatible client at the Tracelane gateway base URL, you get the LLM leg only —
one span per request, no tree. See Which integration should I use?.
Setup
ingest scope. Mint one in Settings → API keys.
LangChainInstrumentor covers LangGraph too — LangGraph is built on LangChain
runnables, so graph nodes come through the same callback system. You do not need a second
instrumentor.What a trace looks like
A two-node LangGraph agent, verified end to end against Tracelane production on 2026-08-31 — 11 spans, 1 root, 10 parented, 0 orphans:Span volume — read this before you pick a plan
One agent run is many spans. The tree above is 11 spans for oneinvoke(); a single
prompt | model | parser chain is 4. That is the point of the integration — the
structure is the product — but it means span volume is not run volume.
Plan limits are counted in spans on this path.
Which integration should I use?
They compose: point the gateway at your provider and run the instrumentor, and you get
gateway features plus agent structure.