elastic-opentelemetry
Elastic Distribution of OpenTelemetry Python
Decision gist · record as of 2026-08-14
Yes, if you are adopting OpenTelemetry in Python and plan to export to Elastic Observability. The package eliminates manual dependency assembly and provides Elastic-optimized defaults out of the box. Install with caution in production given its Alpha status; verify that Elastic-specific processors meet your requirements and that performance is acceptable for your workload. No known security vulnerabilities as of the fact sheet date.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later; intended for applications already using or adopting OpenTelemetry.
- Low install friction with a pure-Python wheel.
- Active maintenance with a recent release (24 days old) and ongoing commits.
License · maintenance · safety
Apache-2.0 (permissive) — Apache-2.0 permissive license allows commercial and private use with minimal restrictions; suitable for most production environments.
last release 2026-07-21 (24 days) · last repo commit 2026-08-14 · 15 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 94,700 downloads/mo, #13,313 on PyPI
Alternatives
Verify before relying
pip install elastic-opentelemetry
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
trace.set_tracer_provider(TracerProvider())
tracer = trace.get_tracer(__name__)- Whether Elastic-specific processors are automatically applied or require explicit configuration beyond standard OpenTelemetry setup.
- Performance overhead compared to upstream OpenTelemetry Python when not exporting to Elastic backends.
- Frequency and scope of bug fixes and improvements claimed to arrive before upstream OpenTelemetry releases.
What it is and what it does
Elastic OpenTelemetry Python (EDOT Python) is a pre-configured distribution of OpenTelemetry Python designed to simplify observability adoption while maintaining full compatibility with OpenTelemetry standards. It bundles tracing and metrics collection with sensible defaults—such as pre-selecting which sources to instrument—and includes Elastic-specific processors that optimize data export to Elastic Observability deployments. The package wraps 13 OpenTelemetry runtime dependencies including the core SDK, instrumentation libraries for system metrics and cloud providers (GCP, Azure, AWS), and the OTLP exporter, presenting them as a single installation.
The distribution aims to reduce setup friction for teams adopting observability in Python applications. It introduces no new concepts beyond OpenTelemetry itself, meaning developers familiar with the standard OpenTelemetry API can use it immediately. The package is actively maintained by Elastic and receives improvements before they land upstream, though it remains in Alpha status (Development Status 3). It supports Python 3.10 through 3.14 and is classified as Typed.
Use it for
- Set up distributed tracing and metrics collection in a Python application with minimal configuration, using Elastic Observability as the backend.
- Migrate from a proprietary APM agent to OpenTelemetry while maintaining compatibility with Elastic's observability platform.
- Instrument microservices running on GCP, Azure, or AWS with automatic resource detection and cloud-provider-specific context.
- Collect system metrics (CPU, memory, disk) alongside application traces in a single observability pipeline.
- Evaluate OpenTelemetry in a Python project without manually assembling and configuring individual instrumentation packages.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are adopting OpenTelemetry in Python and plan to export to Elastic Observability.
The package eliminates manual dependency assembly and provides Elastic-optimized defaults out of the box. Install with caution in production given its Alpha status; verify that Elastic-specific processors meet your requirements and that performance is acceptable for your workload. No known security vulnerabilities as of the fact sheet date.
Install
elastic-opentelemetry on PyPI
Before you install
Low install friction with a pure-Python wheel. Active maintenance with a recent release (24 days old) and ongoing commits. Depends on 13 OpenTelemetry packages and related utilities, all standard observability libraries.
Requires Python 3.10 or later; intended for applications already using or adopting OpenTelemetry.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions; suitable for most production environments.
Quickstart
pip install elastic-opentelemetry
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
trace.set_tracer_provider(TracerProvider())
tracer = trace.get_tracer(__name__)
Verify before relying
- Whether Elastic-specific processors are automatically applied or require explicit configuration beyond standard OpenTelemetry setup.
- Performance overhead compared to upstream OpenTelemetry Python when not exporting to Elastic backends.
- Frequency and scope of bug fixes and improvements claimed to arrive before upstream OpenTelemetry releases.
Package facts
| License | Apache-2.0 permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 13 packagesopentelemetry-apiopentelemetry-exporter-otlpopentelemetry-instrumentationopentelemetry-instrumentation-system-metricsopentelemetry-resourcedetector-gcpopentelemetry-resource-detector-azureopentelemetry-resource-detector-containeridopentelemetry-sdkopentelemetry-sdk-extension-awsopentelemetry-semantic-conventionsopentelemetry-opamp-clientpackaginguuid-utils |
| Maintenance | Actively maintained 24 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 94,700 / month, #13,313 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 3 - AlphaFramework :: OpenTelemetryFramework :: OpenTelemetry :: DistrosIntended Audience :: DevelopersProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Typing :: Typed |
Evidence: elastic_opentelemetry-1.15.0-py3-none-any.whl
Tags
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 › “opentelemetry python distribution”
- elastic-opentelemetryElastic's customized distribution of OpenTelemetry Python that…
- microsoft-opentelemetryProvides a unified OpenTelemetry distribution for Python that…
- opentelemetry-container-distroProvides an OpenTelemetry distribution that automatically detects and…
Give your agent the search over MCP, or paste the wish link into any chat.
More Monitoring packages
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.
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.
Provides the reference implementation of the OpenTelemetry API for collecting and exporting traces, metrics, and logs from Python applications.
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.
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.
Provides automatic instrumentation commands and programmatic APIs to inject distributed tracing into Python applications without code changes, detecting and instrumenting packages used by your program.
Install it if you need distributed tracing without code changes and have compatible instrumented packages in your environment.
See also opentelemetry-instrumentation-celery · opentelemetry-instrumentation-elasticsearch · elastic-apm · aiobotocore-otel · opentelemetry-instrumentation-remoulade · coralogix-opentelemetry · opentelemetry-instrumentation-jinja2 · opentelemetry-instrumentation-lancedb · opentelemetry-instrumentation-aiohttp-client · opentelemetry-instrumentation-logging