Skip to main content
Native Instrumentation is currently the default setting of Odigos Open-Source version.eBPF-Based Instrumentation is currently not supported for this language.

Supported Versions

Odigos uses the official opentelemetry-python-instrumentation OpenTelemetry Auto Instrumentation, thus it supports the same Python versions as this project.
  • In the enterprise version, Odigos leverages eBPF to enhance performance in the Python instrumentation process.
  • Odigos ships two separate Python distros — one for Python 3.8 and one for Python 3.9 and above. Odigos selects the correct distro automatically based on the runtime version of your workload.
  • Python 3.8 uses a dedicated legacy distro with OpenTelemetry instrumentation 0.54b1.
  • Python 3.9 through 3.14 uses the main distro with the latest OpenTelemetry instrumentation.

Traces

Odigos will automatically instrument your Python services to record and collect spans for distributed tracing, by utilizing the OpenTelemetry Python official auto Instrumentation Libraries.

Instrumentation Libraries

The following Python modules will be auto instrumented by Odigos. Supported libraries differ between the Python 3.8 and Python 3.9+ distros:
The Python 3.8 distro includes the libraries below. It does not include Gen AI instrumentations other than OpenAI.

Database Clients, ORMs, and Data Access Libraries

HTTP Frameworks

  • asgi versions asgiref ~= 3.0
  • django versions django >= 1.10
    Please note that for Django instrumentation to work, you need to set the DJANGO_SETTINGS_MODULE environment variable. Make sure to set this in your Kubernetes manifest or Dockerfile to ensure proper configuration.
  • fastapi versions fastapi ~= 0.58
  • flask versions flask >= 1.0
  • pyramid versions pyramid >= 1.7
  • starlette versions starlette >= 0.13, < 0.15
  • falcon versions falcon >= 1.4.1, < 5.0.0
  • tornado versions tornado >= 5.1.1

HTTP Clients

Messaging Systems Clients

  • aio-pika versions aio_pika >= 7.2.0, < 10.0.0
  • celery versions celery >= 4.0, < 6.0
  • confluent-kafka versions confluent-kafka >= 1.8.2, <= 2.7.0
  • kafka-python versions kafka-python >= 2.0, < 3.0, kafka-python-ng >= 2.0, < 3.0
  • pika versions pika >= 0.12.0
  • remoulade versions remoulade >= 0.50

RPC (Remote Procedure Call)

  • grpc versions grpcio >= 1.42.0

Web Servers

Cloud Services and SDKs

Framework and Library Utilities

  • jinja2 versions jinja2 >= 2.7, < 4.0

Other

Gen AI

  • openai versions openai >= 1.26.0

Loggers

Automatic injection of trace context (trace id and span id) into log records for the following loggers: