Skip to main content
PyPI Monitor Google ADK (Agent Development Kit) applications with Fiddler’s purpose-built SDK. Get deep visibility into agent reasoning, LLM interactions, and tool execution for ADK-based agent applications. Platform Compatibility: Works with ADK agents using either Google Gemini API keys or Vertex AI authentication.

What You’ll Need

  • Fiddler account (cloud or on-premises)
  • Google ADK agent application
  • Python 3.10 or higher
  • Fiddler API key
  • Google Gemini API key or Vertex AI credentials

Quick Start

What Gets Monitored

ADK Agent Operations

  • Agent Invocations (invoke_agent) - Full agent execution with timing and session tracking
  • LLM Calls (call_llm) - LLM request/response capture with input, output, system instructions, and tool definitions
  • Tool Execution (execute_tool) - Tool call arguments and return values
  • Model Inference (generate_content) - Token usage, model name, and finish reasons

Captured Attributes

  • LLM Input/Output - User prompt text, model response text, system instructions
  • Tool I/O - Tool call arguments (JSON) and tool response payloads
  • Token Usage - Input tokens, output tokens, reasoning tokens
  • Agent Identity - Agent name, agent ID, session/conversation ID
  • Finish Reasons - LLM stop reason per generation

Configuration Options

Programmatic Configuration

Google Authentication

ADK supports two authentication methods for accessing Gemini models:

Content Capture

ADK includes full LLM request/response payloads in span attributes by default. To disable payload capture (e.g., for PII protection):

Example Applications

Document Processing Agent with Tools

View complete example —>

Viewing Your Data

Navigate to Fiddler UI to analyze Google ADK agent performance:
  1. Trace Explorer - View full span trees: agent > LLM > tool hierarchy
  2. Session Analysis - Multi-turn conversation flows grouped by session
  3. LLM Performance - Input/output content, token usage, latency
  4. Tool Metrics - Tool call arguments, responses, and execution time
  5. Cost Tracking - Token usage per agent session

Span Types

How It Works

Google ADK emits OpenTelemetry spans natively through a tracer named gcp.vertex.agent. The fiddler-adk SDK:
  1. Sets up an isolated tracing pipeline via FiddlerClient (provider, processor, OTLP exporter) and promotes it to the global tracer provider so ADK’s tracer resolves to it.
  2. Propagates session identity by backfilling gen_ai.conversation.id from child spans onto the root invocation span, ensuring all spans in a turn share the same session ID.
  3. Delegates content extraction to the Fiddler backend, which parses ADK’s JSON span attributes (gcp.vertex.agent.llm_request, etc.) into human-readable fields.
The SDK operates in standalone mode — it does not interact with customer-configured tracers or providers.

Troubleshooting

Traces Not Appearing in Fiddler

Verify credentials:
Check instrumentation is active:
Ensure traces are flushed before exit:

Missing Content on Spans

Content extraction (LLM input/output, tool I/O) is handled by the Fiddler backend. If you see raw JSON instead of extracted text, ensure your Fiddler instance has the Google ADK backend mapper deployed.

Orphan Root Spans

If invocation root spans appear disconnected from their children, update to the latest fiddler-adk version. The ADKSpanProcessor backfills gen_ai.conversation.id to root spans automatically.