PyCon DE & PyData 2025

Instrumenting Python Applications with OpenTelemetry
2025-04-23 , Ferrum

Observability is challenging and often requires vendor-specific instrumentation. Enter OpenTelemetry: a vendor-agnostic standard for logs, metrics, and traces. Learn how to instrument Python applications with OpenTelemetry and send telemetry to your preferred observability backends.


Understanding the behaviour and performance characteristics of the software we deploy, especially distributed software, is quite tricky. While observability tooling helps, implementing vendor-specific instrumentation creates tight coupling and technical debt.

Enter OpenTelemetry: A one-stop-shop for observability instrumentation, collection and routing. It aims to solve the above problem by providing SDKs, libraries and a unified semantic model for describing telemetry signals like logs, metrics and traces. These signals can be collected, transformed and then routed to many observability backends that support the OpenTelemetry protocol - avoiding vendor lock-in and platform specific observability code.

In this workshop, we'll guide you through what OpenTelemetry is, how it works, how to instrument your Python applications to emit telemetry data, and how to ingest this data into observability backends - enabling you to make better decisions about your application's performance.

Note: We will be using docker & docker compose during this workshop, so please make sure it is installed! Familiarity with Flask is also a plus!

We'll be working from this repository: https://github.com/autophagy/pycon-2025-otel-workshop

You're welcome to clone the repository in advance and pull the images we'll use for the workshop. You can pull these images by running following command from the root of the repo: docker compose pull.


Expected audience expertise: Domain:

Novice

Expected audience expertise: Python:

Intermediate

Mika is a Berlin-based lifeform mostly working with devops, distributed systems and Apache Flink. She also loves Rust, making ceramics and baking bread.

Emily is a software engineer with an interest in developer tooling and platform engineering. When she's not working with computers, she can usually be found making misshapen pottery or exploring Berlin's parks with her dog.