Skip to content

Overview

Pydantic Logfire is built on OpenTelemetry, so it can ingest traces from many artificial intelligence (AI) agent frameworks. Each guide either shows a verified integration or explains the framework’s current limitation. Supported examples show four things:

  • How to send telemetry to Logfire — the exact setup for that framework.
  • A native agent and tool call you can adapt to your application.
  • What you’ll see in Logfire — including any limits in the specialized large language model (LLM) or Agents views.
  • How to use managed prompts — authoring and versioning prompts in Prompt Management and fetching them at runtime.

There are four integration patterns, depending on the framework:

  1. Native OpenTelemetry (OTel) — the framework already emits OTel spans through the global tracer provider. In Python, calling logfire.configure() is enough to collect those native spans (e.g. Pydantic AI, AutoGen, Google ADK, Strands, and Semantic Kernel). A guide may also enable model-client tracing. In other languages, point the standard OTel software development kit (SDK) at Logfire’s OpenTelemetry Protocol (OTLP) endpoint.
  2. A first-party adapter or bridge — an integration package connects the framework’s own tracing system to OTel (e.g. Haystack’s opentelemetry-haystack, Vercel’s @ai-sdk/otel, and Mastra’s @mastra/otel-exporter). Rig uses the Logfire Rust SDK to install a tracing subscriber that bridges its native Rust tracing spans to OTel.
  3. A third-party instrumentor — an OpenInference or OpenLLMetry package adds the spans. Because logfire.configure() sets the global provider, the instrumentor’s spans flow to Logfire automatically (e.g. CrewAI, smolagents, Agno).
  4. OTLP over the wire — for languages and frameworks that already emit compatible telemetry, send to Logfire’s OTLP endpoint directly (or via an OpenTelemetry Collector).

All four patterns can send traces to the Live and Explore views. The specialized LLMs and Agents views also depend on the span attributes and parent-child relationships the framework emits. Receiving valid OTLP data does not by itself guarantee that every specialized view can interpret it. Where a framework has a known limitation, its guide calls that out explicitly.

The examples do not add manual wrapper spans to simulate agent support. If a framework has no complete native, official, or maintained third-party OpenTelemetry path, its guide says that it is not fully supported.

Python

FrameworkGuide
Pydantic AIPydantic AI
OpenAI Agents SDKOpenAI
LangChainLangChain
LangGraphLangGraph
CrewAICrewAI
AutoGenAutoGen
Google ADKGoogle ADK
smolagentssmolagents
Strands AgentsStrands Agents
AgnoAgno
HaystackHaystack
Semantic KernelSemantic Kernel (Python)
LettaLetta
Claude Agent SDKClaude Agent SDK

TypeScript / JavaScript

FrameworkGuide
Vercel AI SDKVercel AI SDK
MastraMastra
LangChain.js / LangGraph.jsLangChain.js
OpenAI Agents SDK (TS)OpenAI Agents SDK (TS) — not fully supported
VoltAgentVoltAgent
LlamaIndex.TSLlamaIndex.TS
EveEve

Go

FrameworkGuide
Firebase GenkitGenkit (Go)
EinoEino (Go) — not fully supported

Rust

FrameworkGuide
RigRig (Rust)

.NET

FrameworkGuide
Semantic KernelSemantic Kernel (.NET)
Microsoft Agent FrameworkMicrosoft Agent Framework (.NET)

LlamaIndex Python, DSPy, and Instructor have useful model or workflow telemetry integrations, but their current guides do not demonstrate native agent tool loops. They remain in the broader LLM integrations rather than being presented here as verified agent examples.