Set up OpenTelemetry
To log Pydantic AI applications using Galileo, the first step is to set up OpenTelemetry.Install the required packages
Add the Galileo Python SDK and Pydantic AI to your Python environment.
Create environment variables for your Galileo settings
Set environment variables for your Galileo settings, for example in a
.env file:Get your endpoint
The OTel endpoint is different from Galileo’s regular API endpoint and is specifically designed to receive telemetry data in the OTLP format.If you are using:
-
Galileo Cloud at app.galileo.ai, then you don’t need to provide a custom OTel endpoint.
The default endpoint
https://api.galileo.ai/otel/traceswill be used automatically. -
A self-hosted Galileo deployment, replace the
https://api.galileo.ai/otel/tracesendpoint with your deployment URL. The format of this URL is based on your console URL, replacingconsolewithapiand appending/otel/traces.
- if your console URL is
https://console.galileo.example.com, the OTel endpoint would behttps://api.galileo.example.com/otel/traces - if your console URL is
https://console-galileo.apps.mycompany.com, the OTel endpoint would behttps://api-galileo.apps.mycompany.com/otel/traces
What gets logged
Pydantic AI spans are automatically detected and normalized by Galileo’s OpenTelemetry extension. The following span types are supported:- Agent runs: Complete agent executions with input/output messages
- Chat completions: LLM calls with messages and responses
- Tool executions: Individual tool invocations with arguments and results
- Tool workflows: Parent spans that group multiple tool executions