Dynatrace
Monitor and observe your SDK with Dynatrace.
Dynatrace provides real-time monitoring of user interactions, backend services, and infrastructure. Dynatrace supports various environments including cloud, on-premise, and hybrid setups.
Java SDK
Prerequisites
- Version 17.3 (or later) of the Java SDK
Dynatrace OneAgent
To monitor your application using Dynatrace OneAgent, there is no need to change the SDK.
Follow the steps to install the OneAgent on your host and configure it to monitor your application.
To test an application with Java SDK and OneAgent, you can use the provided example application.
Dynatrace OpenTelemetry
To monitor your application using OpenTelemetry, follow the steps for OpenTelemetry in the Java SDK.
PHP SDK
Prerequisites
- Version 10.5 (or later) of the PHP SDK
Dynatrace OneAgent
To monitor your application using Dynatrace OneAgent, there is no need to change the SDK.
Follow the steps in the README file to set up your Docker environment.
To test an application with the PHP SDK and Dynatrace OneAgent, you can use the provided example application.
.NET SDK
Prerequisites
- Version 11.0 (or later) of the .NET SDK
Dynatrace OneAgent
To monitor your application using Dynatrace OneAgent, there is no need to change the SDK.
Follow the steps to install Dynatrace OneAgent on your host and configure it to monitor your application.
To test an application with .NET SDK and Dynatrace OneAgent, you can use the provided example application.
Dynatrace OpenTelemetry
To monitor your application using OpenTelemetry, follow the steps for OpenTelemetry in the .NET SDK.
TypeScript SDK
Prerequisites
- Version 2.3.0 (or later) of the TypeScript SDK
- Version 1.0.0 (or later) of the @commercetools/ts-sdk-apm
- The required dependencies must be installed. You can find a full list of dependencies here.
Include the monitoring package in your SDK
Create a oneagent-tracer.js
file in your project to capture and send request and response data to Dynatrace using opentelemetry
traces and metrics. You can find a sample oneagent-tracer.js
file here.
This file uses environment variables that you need to set up according to your commercetools and Dynatrace configurations. Check our example environment file for guidance.
You can use the oneagent-metric.js module, which exposes metric tracking functions, to record specific function values or object properties.
To integrate Dynatrace into your project, use the @commercetools/ts-sdk-apm package with withTelemetryMiddleware()
method in your SDK client setup. The following code demonstrates how to implement this middleware in your SDK client.
// Import the @commercetools/ts-sdk-apm packageimport { createTelemetryMiddleware } from '@commercetools/ts-sdk-apm'import { ClientBuilder } from '@commercetools/sdk-client-v2'// Configure the telemetry optionsconst telemetryOptions = {tracer: () => require('./path/to/oneagent-tracer.js'),userAgent: 'typescript-sdk-middleware-dynatrace',createTelemetryMiddleware}// Create the client with the withTelemetryMiddleware() middlewareconst client = new ClientBuilder().withClientCredentialsFlow(...).withHttpMiddleware(...).withTelemetryMiddleware(telemetryOptions) // telemetry middleware....build()
For an example of integrating Dynatrace with the TypeScript SDK, refer to the Dynatrace Express example application.
Using the Dynatrace dashboard
You can now send requests in your application to commercetools Composable Commerce through the SDK and monitor the reported data on the Dynatrace visual dashboard.
For more information on using Dynatrace dashboards, consult Use dashboards and other Dynatrace documentation.