Using OpenTelemetry with Dynatrace
OpenTelemetry is an open standard for the collection and exchange of telemetry data. It enables applications to record and create relevant data points and publish them to backends (such as Dynatrace) for further aggregation and analysis.
With OpenTelemetry, you can create, collect, transform, and publish the following telemetry signals in a fully interoperable and vendor-agnostic fashion:
- Traces
- Metrics
- Logs
For this purpose, OpenTelemetry provides a set of SDKs and API libraries for a wide range of modern and popular programming languages (such as Java, JavaScript, C++, and more).
Dynatrace has been an active supporter of OpenTelemetry from the beginning of the project and is a key contributor. A large number of Dynatrace technologies already support OpenTelemetry natively and Dynatrace is committed to further extending that coverage.
Getting started with OpenTelemetry
Check for language support
Instrument your application
Enrich data with OneAgent
Send data to Dynatrace
Check for language support
Before you start, see if the technologies used by your application are supported by OpenTelemetry. You can find a list of available implementations in the OpenTelemetry documentation.
Instrument your application
Instrumentation extends the functionality of your application to record and publish relevant telemetry details.
- If automatic instrumentation is supported for your technology stack, it is best to start with that.
- If automatic instrumentation isn't supported or doesn't provide enough insight, you can also manually instrument your code.
For tracing distributed services, pay particular attention to context propagation.
We provide guided walkthroughs for the majority of currently supported languages, detailing for each language how to:
- Integrate OpenTelemetry
- Use different instrumentation methods
- Record individual telemetry signals
- Send data to Dynatrace
Enrich data with OneAgent
OneAgent provides native support for OpenTelemetry and can instrument applications and enrich OpenTelemetry signals with data specific to your Dynatrace setup.
Send data to Dynatrace
You need to send your telemetry to the Dynatrace backend to further aggregate, analyze, and monitor it.
You can use native OpenTelemetry OTLP export for that or have OneAgent automatically detect and ingest the data if OneAgent supports the technology stack.
Collector
The Collector is a network service application that you can use to batch and transform telemetry data. It acts as a proxy and can receive OTLP requests as well as data from other sources, transform these requests according to defined rules, and forward them to the backend.
In addition to the standard vanilla build of the Collector provided by OpenTelemetry, there are also customized builds with additional features available from third parties.
For details, see OpenTelemetry Collector.