Features of the EDOT Java Agent
The EDOT Java agent is a distribution of OpenTelemetry Java Instrumentation agent, it thus inherits all the features of the OpenTelemetry Java Instrumentation to capture logs, metrics and traces.
The EDOT Java agent also provides:
- exclusive features that are not available in the OpenTelemetry Java Instrumentation
- features of OpenTelemetry Java Instrumentation with different default configuration
In addition to the features listed here, see supported technologies for an overview of the supported technologies.
Resource attributes
The EDOT Java agent includes the following resource attributes providers from opentelemetry-java-contrib
- AWS: aws-resources (enabled by default)
- GCP: gcp-resources (enabled by default)
- application server service name detection: resource-providers
Inferred spans
The EDOT Java agent includes the Inferred Spans Extension from opentelemetry-java-contrib.
This extension provides the ability to enhance the traces by creating spans from async-profiler data without the need of explicit instrumentation of corresponding spans.
This feature is disabled by default and can be enabled by setting OTEL_INFERRED_SPANS_ENABLED
to true
.
See inferred-spans documentation for configuration options.
Span stacktrace
The EDOT Java agent includes the Span Stacktrace Extension from opentelemetry-java-contrib.
This feature is enabled by default and allows to capture a stacktrace for spans that have a duration above a threshold (default 5ms).
See span-stacktrace documentation for configuration options.
Runtime metrics
Experimental runtime metrics are enabled by default.
Set OTEL_INSTRUMENTATION_RUNTIME_TELEMETRY_EMIT_EXPERIMENTAL_TELEMETRY
to false
to disable them.
Metric Temporality
Elasticsearch and Kibana work best with metrics provided in delta-temporality. Therefore, the EDOT Java changes the default value of otel.exporter.otlp.metrics.temporality.preference
to DELTA
. You can override this default if needed, note though that some provided Kibana dashboards will not work correctly in this case.
Elastic Universal profiling integration
Universal Profiling integration provides the ability to correlate traces with profiling data from the Elastic universal profiler.
This feature is enabled by default on supported systems, disabled otherwise.
See universal-profiling-integration for details and configuration options.