![]() |
VOOZH | about |
Agent Observability can automatically trace and annotate calls to supported LLM frameworks and libraries through various LLM integrations. When you run your LLM application with the Agent Observability SDK, these LLM integrations are enabled by default and provide out-of-the-box traces and observability, without you having to change your code.
| Framework | Supported Versions | Tracer Version |
|---|---|---|
| Amazon Bedrock | >= 1.31.57 | >= 2.9.0 |
| Amazon Bedrock Agents | >= 1.38.26 | >= 3.10.0 |
| Anthropic | >= 0.28.0 | >= 2.10.0 |
| Claude Agent SDK | >= 0.0.23 | >= 4.5.0 |
| CrewAI | >= 0.105.0 | >= 3.5.0 |
| Google ADK | >= 1.0.0 | >= 3.15.0 |
| Google GenAI | >= 1.21.1 | >= 3.11.0 |
| LangChain | >= 0.1.0 | >= 2.9.0 |
| LangGraph | >= 0.2.23 | >= 3.10.1 |
| LiteLLM | >= 1.65.4 | >= 3.9.0 |
| MCP | >= 1.10.0 | >= 3.11.0 |
| OpenAI, Azure OpenAI | >= 1.0.0 | >= 2.9.0 |
| OpenAI Agents | >= 0.0.2 | >= 3.5.0 |
| Pydantic AI | >= 0.3.0 | >= 3.11.0 |
| Strands Agents | >= 1.11.0 | Any |
| Vertex AI | >= 1.71.1 | >= 2.18.0 |
| vLLM | >= 0.10.2 | >= 4.2.0 |
| Framework | Supported Versions | Tracer Version |
|---|---|---|
| Amazon Bedrock | >= 3.422.0 | >= 5.35.0 (CJS), >=5.35.0 (ESM) |
| Anthropic | >= 0.14.0 | >= 5.71.0 (CJS), >=5.71.0 (ESM) |
| LangChain | >= 0.1.0 | >= 5.32.0 (CJS), >=5.38.0 (ESM) |
| MCP | >= 1.27.1 | >= 5.99.0 (CJS), >=5.99.0 (ESM) |
| OpenAI, Azure OpenAI | >= 3.0.0 | >= 4.49.0, >= 5.25.0 (CJS), >= 5.38.0 (ESM) |
| Vercel AI SDK | >=4.0.0 | >= 5.63.0 (CJS), >=5.63.0 (ESM) |
| VertexAI | >= 1.0.0 | >= 5.44.0 (CJS), >=5.44.0 (ESM) |
| Google GenAI | >= 1.19.0 | >= 5.81.0 (CJS), >=5.81.0 (ESM) |
| Framework | Supported Versions | Tracer Version |
|---|---|---|
| OpenAI, Azure OpenAI | >= 3.0.0 | >= 1.59.0 |
Datadog’s LLM integrations capture latency, errors, input parameters, input and output messages, and token usage (when available) for traced calls.
All integrations are enabled by default.
Use the in-code SDK setup and specify integrations_enabled=False.
Example: In-code SDK setup that disables all LLM integrations
from ddtrace.llmobs import LLMObs
LLMObs.enable(
ml_app="<YOUR_ML_APP_NAME>",
api_key="<YOUR_DATADOG_API_KEY>",
integrations_enabled=False
)
Use the in-code SDK setup and specify plugins: false.
Example: In-code SDK setup that disables all LLM integrations
const tracer = require('dd-trace').init({
llmobs: { ... },
plugins: false
});
const { llmobs } = tracer;
integrations_enabled=False.ddtrace.patch().Example: In-code SDK setup that only enables the LangChain integration
from ddtrace import patch
from ddtrace.llmobs import LLMObs
LLMObs.enable(
ml_app="<YOUR_ML_APP_NAME>",
api_key="<YOUR_DATADOG_API_KEY>",
integrations_enabled=False
)
patch(langchain=True)
plugins: false.use().Example: In-code SDK setup that only enables the LangChain integration
const tracer = require('dd-trace').init({
llmobs: { ... },
plugins: false
});
const { llmobs } = tracer;
tracer.use('langchain', true);
For more specific control over library patching and the integration that starts the span, you can set the following environment variables:
DD_PATCH_MODULESmodule:true,module:false. Available in version 2.17.4+.DD_PATCH_MODULES=openai:false,langchain:falseDD_TRACE_DISABLED_INSTRUMENTATIONSDD_TRACE_DISABLED_INSTRUMENTATIONS=openai,httpAdditional helpful documentation, links, and articles:
| |