EDOT Language SDKs

The Elastic Distributions of OpenTelemetry (EDOT) Language SDKs (aka. application agents) are thin wrappers around corresponding upstream OpenTelemetry SDKs, preconfigured for best experience with Elastic Observability. EDOT Language SDKs are fully compatible with and can be used as a drop-in replacement for upstream OTel SDKs. In addition, EDOT SDKs provide popular, enterprise add-on features and technical support, Elastic APM users might know from classic Elastic APM agents.

Currently, the following EDOT SDKs are availble:

EDOT SDK Release Status
EDOT .NET Technical Preview
EDOT Java GA
EDOT Node.js Technical Preview
EDOT PHP Technical Preview
EDOT Python Technical Preview
EDOT Android ⤴ Technical Preview
EDOT iOS ⤴ Technical Preview

For languages for which Elastic does not offer its own distribution, we recommend using the upstream OTel SDKs:

Features

✅ generally available
𝐓 in technical preview
➖ not applicable
❌ not available
Feature
.NET
Java
Node.js
PHP
Python
Android
iOS
Distributed Tracing
1.0+
'Distributed Tracing' is available in EDOT .NET since version 1.0
1.0+
'Distributed Tracing' is available in EDOT Java since version 1.0
1.0+
'Distributed Tracing' is available in EDOT Node.js since version 1.0
1.0+
'Distributed Tracing' is available in EDOT PHP since version 1.0
1.0+
'Distributed Tracing' is available in EDOT Python since version 1.0
1.0+
'Distributed Tracing' is available in EDOT Android since version 1.0
1.0+
'Distributed Tracing' is available in EDOT iOS since version 1.0
Service Map
1.0+
'Service Map' is available in EDOT .NET since version 1.0
1.0+
'Service Map' is available in EDOT PHP since version 1.0
1.0+
'Service Map' is available in EDOT Python since version 1.0
1.0+
'Service Map' is available in EDOT Android since version 1.0
v1.0+
'Service Map' is available in EDOT iOS since version v1.0
Zero-code instrumentation
1.0+
'Zero-code instrumentation' is available in EDOT .NET since version 1.0
1.0+
'Zero-code instrumentation' is available in EDOT Java since version 1.0
1.0+
'Zero-code instrumentation' is available in EDOT Node.js since version 1.0
1.0+
'Zero-code instrumentation' is available in EDOT PHP since version 1.0
1.0+
'Zero-code instrumentation' is available in EDOT Python since version 1.0
Head-based Sampling
1.0+
'Head-based Sampling' is available in EDOT .NET since version 1.0
1.0+
'Head-based Sampling' is available in EDOT Java since version 1.0
1.0+
'Head-based Sampling' is available in EDOT Node.js since version 1.0
1.0+
'Head-based Sampling' is available in EDOT Python since version 1.0
v1.0+
'Head-based Sampling' is available in EDOT iOS since version v1.0
Baggage
1.0+
'Baggage' is available in EDOT .NET since version 1.0
1.0+
'Baggage' is available in EDOT Java since version 1.0
1.0+
'Baggage' is available in EDOT Node.js since version 1.0
1.0+
'Baggage' is available in EDOT PHP since version 1.0
1.0+
'Baggage' is available in EDOT Python since version 1.0
v1.0+
'Baggage' is available in EDOT iOS since version v1.0
Inferred Spans
𝐓
1.0+
'Inferred Spans' is available in EDOT PHP since version 1.0
Logs Collection
1.0+
'Logs Collection' is available in EDOT .NET since version 1.0
𝐓
1.0+
'Logs Collection' is available in EDOT PHP since version 1.0
𝐓
1.0+
'Logs Collection' is available in EDOT Android since version 1.0
v1.0+
'Logs Collection' is available in EDOT iOS since version v1.0
Logs Correlation
1.0+
'Logs Correlation' is available in EDOT .NET since version 1.0
𝐓
1.0+
'Logs Correlation' is available in EDOT PHP since version 1.0
𝐓
1.0+
'Logs Correlation' is available in EDOT Android since version 1.0
v1.0+
'Logs Correlation' is available in EDOT iOS since version v1.0
Metrics Collection
1.0+
'Metrics Collection' is available in EDOT .NET since version 1.0
1.0+
'Metrics Collection' is available in EDOT PHP since version 1.0
1.0+
'Metrics Collection' is available in EDOT Python since version 1.0
1.0+
'Metrics Collection' is available in EDOT Android since version 1.0
𝐓
v0.7+
'Metrics Collection' is available in EDOT iOS since version v0.7
Custom Metrics
1.0+
'Custom Metrics' is available in EDOT .NET since version 1.0
1.0+
'Custom Metrics' is available in EDOT PHP since version 1.0
1.0+
'Custom Metrics' is available in EDOT Python since version 1.0
1.0+
'Custom Metrics' is available in EDOT Android since version 1.0
𝐓
v0.7+
'Custom Metrics' is available in EDOT iOS since version v0.7
Agent Health Monitoring
Runtime Metrics
1.0+
'Runtime Metrics' is available in EDOT .NET since version 1.0
1.0+
'Runtime Metrics' is available in EDOT Java since version 1.0
𝐓
Capturing Errors / Exceptions
1.0+
'Capturing Errors / Exceptions' is available in EDOT .NET since version 1.0
1.0+
'Capturing Errors / Exceptions' is available in EDOT PHP since version 1.0
1.0+
'Capturing Errors / Exceptions' is available in EDOT Python since version 1.0
1.0+
'Capturing Errors / Exceptions' is available in EDOT Android since version 1.0
v1.0+
'Capturing Errors / Exceptions' is available in EDOT iOS since version v1.0
Crash Reporting
v1.0+
'Crash Reporting' is available in EDOT iOS since version v1.0
Central Configuration
Profiling Integration
𝐓

Elastic Support for EDOT SDKs

Elastic provides technical support for EDOT Language SDKs according to Elastic’s Support Policy. EDOT SDKs are meant to be used in combination with the EDOT Collector or Elastic’s managed OTLP endpoint (on Elastic Cloud Serverless) to ingest data into Elastic solutions from the EDOT SDKs. Other ingestion paths are not officially supported by Elastic.

License

EDOT SDKs are licensed under the Apache License, Version 2.0.