Send data to Dynatrace with OpenTelemetry
OpenTelemetry is an observability framework for cloud-native software. It is used to instrument frameworks and components and export telemetry data (traces, metrics and logs) for analysis to gain insights into your software's performance and behavior. Dynatrace is a key contributor to this open source project.
You can use OpenTelemetry in Dynatrace to:
- Extend Dynatrace technology coverage for technologies that are not supported out of the box by OneAgent
- Enrich telemetry data with additional spans and metrics
Ingest trace data
You can ingest OpenTelemetry trace data (traces and spans) in two different ways:
Available for: Java, Go, Node.js, PHP, and .NET on all platforms supported by OneAgent
Use this approach:
- For services that are already instrumented by OneAgent automatically
- To extend visibility into frameworks and libraries instrumented with OpenTelemetry
- To customize the distributed traces
For details, see OpenTelemetry traces with OneAgent.
Available for: C++, .NET, Erlang/Elixir, Go, Java, PHP, Python, Ruby, Rust, and all languages supported by OpenTelemetry Tracing
Use this approach:
- For services that cannot be instrumented by a OneAgent code module
- When the component you want to monitor already exposes trace data in OpenTelemetry format (OTLP)
For details, see OpenTelemetry instrumentation guide.
Ingest custom metrics
Available for: C++, .NET, Erlang/Elixir, Go, Java, PHP, Python, Ruby, Rust, and all languages supported by OpenTelemetry Metrics.
OpenTelemetry Metrics is currently under active development and not yet considered stable or complete.
You can already use Dynatrace exporters to import OpenTelemetry metrics into Dynatrace. Make sure to check the status of your programming language's OpenTelemetry Metrics implementation in the OpenTelemetry community, as the API and SDK might not be stable yet.
For details, see OpenTelemetry Metrics.
Ingest logs
Dynatrace automatically collects log and event data from a vast array of technologies. With generic log ingestion, you can stream log records to a system and have Dynatrace transform the stream into meaningful log messages. See Log Monitoring.
OpenTelemetry logging is currently under active development. We will offer an integration in a future release.