$npx skillfedfor your agent

opentelemetry-instrumentation

Instrumentation Tools & Auto Instrumentation for OpenTelemetry Python

Worth itPyPI MonitoringReleased Jul 2026393.5M downloads / moApache-2.0Pure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — opentelemetry_instrumentation-0.65b0-py3-none-any.whl
v0.65b0 · released 2026-07-16 · Python >=3.10 · 4 runtime deps: opentelemetry-api, opentelemetry-semantic-conventions, packaging, wrapt

Yes. This package is actively maintained, has no known vulnerabilities, uses a permissive license, and provides genuine value for observability in Python applications. Install it if you need distributed tracing without code changes and have compatible instrumented packages in your environment. The main condition is that your application must use libraries for which OpenTelemetry integrations exist; the package alone does not trace uninstrumented code.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.10 or later.
  • For full auto-instrumentation, you should also install opentelemetry-distro or a custom distro package to configure exporters and common options.
  • Low install friction with a pure-Python wheel and four straightforward runtime dependencies.

License · maintenance · safety

Apache-2.0 (permissive) — Apache-2.0 permissive license allows use in commercial and proprietary projects with minimal restrictions, requiring only license and copyright notice retention.

last release 2026-07-16 (29 days) · last repo commit 2026-08-13 · 1,086 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 393,536,009 downloads/mo, #109 on PyPI

Verify before relying

pip install opentelemetry-instrumentation

# Command-line auto-instrumentation:
opentelemetry-instrument --traces_exporter console python program.py

# Or programmatic initialization:
from opentelemetry.instrumentation import auto_instrumentation
auto_instrumentation.initialize()
  • Whether the package works with gevent applications beyond the experimental OTEL_PYTHON_AUTO_INSTRUMENTATION_EXPERIMENTAL_GEVENT_PATCH option.
  • Performance overhead of automatic instrumentation on large or latency-sensitive applications.
  • Compatibility matrix with specific instrumentation packages and their versions.
Same gist for agents: .md · .json

What it is and what it does

OpenTelemetry Instrumentation is a toolset for automatically injecting distributed tracing into Python applications. It provides two main entry points: the `opentelemetry-bootstrap` command detects installed packages and suggests or installs matching instrumentation packages, and the `opentelemetry-instrument` command wraps your program to apply automatic tracing without requiring code modifications. You can also initialize instrumentation programmatically when command-line injection isn't feasible.

The package depends on opentelemetry-api, opentelemetry-semantic-conventions, packaging, and wrapt to detect active packages and apply instrumentation hooks. It supports multiple trace exporters (OTLP, Jaeger, Zipkin, OpenCensus) and metric exporters (OTLP, Prometheus), with configuration via CLI flags or environment variables. The instrumentation is only effective when your application uses packages for which OpenTelemetry integrations exist.

Use it for

  • Add distributed tracing to an existing Flask or Django application by running it through opentelemetry-instrument without modifying source code.
  • Detect which instrumentation packages your project needs by running opentelemetry-bootstrap to generate a requirements list.
  • Instrument a Celery worker or other background task system to trace task execution across services.
  • Configure multiple trace exporters (e.g., Zipkin and OTLP) to send traces to different backends simultaneously.
  • Initialize auto-instrumentation in a containerized or serverless environment where you cannot modify the application startup command.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

This package is actively maintained, has no known vulnerabilities, uses a permissive license, and provides genuine value for observability in Python applications. Install it if you need distributed tracing without code changes and have compatible instrumented packages in your environment. The main condition is that your application must use libraries for which OpenTelemetry integrations exist; the package alone does not trace uninstrumented code.

Install

opentelemetry-instrumentation on PyPI

Before you install

Low install friction with a pure-Python wheel and four straightforward runtime dependencies. Actively maintained with a recent release and 1086 repository stars, indicating stable community backing.

Requires Python 3.10 or later. For full auto-instrumentation, you should also install opentelemetry-distro or a custom distro package to configure exporters and common options.

License in practice

Apache-2.0 permissive license allows use in commercial and proprietary projects with minimal restrictions, requiring only license and copyright notice retention.

Quickstart

pip install opentelemetry-instrumentation

# Command-line auto-instrumentation:
opentelemetry-instrument --traces_exporter console python program.py

# Or programmatic initialization:
from opentelemetry.instrumentation import auto_instrumentation
auto_instrumentation.initialize()

Verify before relying

  • Whether the package works with gevent applications beyond the experimental OTEL_PYTHON_AUTO_INSTRUMENTATION_EXPERIMENTAL_GEVENT_PATCH option.
  • Performance overhead of automatic instrumentation on large or latency-sensitive applications.
  • Compatibility matrix with specific instrumentation packages and their versions.

Package facts

LicenseApache-2.0 permissive
Python supportSupports the current Python release >=3.10
Install frictionLow. Pure-Python wheel
Runtime dependencies
4 packages
opentelemetry-apiopentelemetry-semantic-conventionspackagingwrapt
MaintenanceActively maintained 29 days since the last release
Last repo commit
First released
Downloads393,536,009 / month, #109 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Evidence: opentelemetry_instrumentation-0.65b0-py3-none-any.whl

Tags

Capabilities
automatic distributed tracingopentelemetry auto instrumentationpython tracing without code changesautomatic instrumentation bootstrapopentelemetry-instrument commandprogrammatic auto instrumentationdetect and instrument python packages
Topics
observabilitydistributed-tracingopentelemetry

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “automatic distributed tracing”

Give your agent the search over MCP, or paste the wish link into any chat.

More Monitoring packages

tqdm Worth it
PyPI · Libraries · released Jul 2026

Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.

copyleftpure Python · 3.8+
648.6Mdownloads / mo
opentelemetry-semantic-conventions Worth it
PyPI · Monitoring · released Jul 2026

Provides generated Python code for OpenTelemetry semantic conventions, enabling standardized attribute naming and constant definitions for instrumentation and telemetry collection.

Install it if you are using OpenTelemetry and want to follow semantic conventions correctly.

Apache-2.0pure Python · 3.10+
542.9Mdownloads / mo
opentelemetry-sdk Worth it
PyPI · Monitoring · released Jul 2026

Provides the reference implementation of the OpenTelemetry API for collecting and exporting traces, metrics, and logs from Python applications.

Apache-2.0pure Python · 3.10+
521.8Mdownloads / mo
opentelemetry-api With conditions
PyPI · Monitoring · released Jul 2026

Provides the abstract API and interfaces for OpenTelemetry instrumentation in Python, defining how to emit traces, metrics, and logs without tying code to a specific SDK implementation.

Apache-2.0pure Python · 3.10+
463.8Mdownloads / mo
opentelemetry-exporter-otlp-proto-http Worth it
PyPI · Monitoring · released Jul 2026

Exports OpenTelemetry observability data to an OpenTelemetry Collector using Protobuf-encoded messages over HTTP.

Install it if you are using OpenTelemetry in Python and need to send data to a Collector over HTTP.

Apache-2.0pure Python · 3.10+
409.9Mdownloads / mo
psutil Worth it
PyPI · Libraries · released Jan 2026

psutil retrieves real-time information about running processes and system resources (CPU, memory, disks, network, sensors) across multiple operating systems, enabling system monitoring, process profiling, and resource management.

permissive licensecompiled wheel · 3.6+
387.6Mdownloads / mo

See also aws-opentelemetry-distro · splunk-opentelemetry · opentelemetry-instrumentation-django · opentelemetry-instrumentation-redis · opencensus-ext-flask · opentelemetry-contrib-instrumentations · opencensus-ext-requests · opentelemetry-distro · pytest-opentelemetry