EDOT Language SDKs
The Elastic Distributions of OpenTelemetry (EDOT) Language SDKs (aka. application agents) are thin wrappers around corresponding upstream OpenTelemetry SDKs, pre-configured 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 available:
EDOT SDK | Release Status |
---|---|
EDOT .NET | GA |
EDOT Java | GA |
EDOT Node.js | GA |
EDOT PHP | GA |
EDOT Python | GA |
EDOT Android | GA |
EDOT iOS | GA |
For languages for which Elastic does not offer its own distribution, we recommend using the upstream OTel SDKs:
Language | Upstream Docs |
---|---|
JS / Browser | Vanilla OTel RUM SDK/API |
Rust | Vanilla OTel Rust SDK/API |
Ruby | Vanilla OTel Ruby SDK/API |
Go | Vanilla OTel Go SDK/API |
C++ | Vanilla OTel C++ SDK/API |
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 Java since version 1.0
|
β
1.0+
'Service Map' is available in EDOT Node.js 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 PHP 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 Java since version 1.0
|
β
|
π
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 Java since version 1.0
|
π
1.0+
'Logs Collection' is available in EDOT Node.js 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 Python 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 Java since version 1.0
|
π
1.0+
'Logs Correlation' is available in EDOT Node.js 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 Python 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 Java since version 1.0
|
β
1.0+
'Metrics Collection' is available in EDOT Node.js 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 Java since version 1.0
|
β
1.0+
'Custom Metrics' is available in EDOT Node.js 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
|
π
1.0+
'Runtime Metrics' is available in EDOT Node.js 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 Java since version 1.0
|
β
1.0+
'Capturing Errors / Exceptions' is available in EDOT Node.js 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 |
β
|
π
1.0+
'Profiling Integration' is available in EDOT Java since version 1.0
|
β
|
β
|
β
|
β
|
β
|
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.