Home

Awesome

Datadog Backend Listener for Apache JMeter

screenshot

Overview

Datadog Backend Listener for Apache JMeter is a JMeter plugin used to send test results to the Datadog platform. It includes the following features:

Installation

You can install the plugin either manually or with JMeter Plugins Manager.

Manual installation

  1. Download the Datadog plugin JAR file from the release page
  2. Place the JAR in the lib/ext directory within your JMeter installation.
  3. Launch JMeter (or quit and re-open the application).

JMeter plugins Manager

  1. If not already configured, download the JMeter Plugins Manager JAR.
  2. Once you've completed the download, place the .jar in the lib/ext directory within your JMeter installation.
  3. Launch JMeter (or quit and re-open the application).
  4. Go to Options > Plugins Manager > Available Plugins.
  5. Search for "Datadog Backend Listener".
  6. Click the checbox next to the Datadog Backend Listener plugin.
  7. Click "Apply Changes and Restart JMeter".

Configuration

To start reporting metrics to Datadog:

  1. Right click on the thread group or the test plan for which you want to send metrics to Datadog.
  2. Go to Add > Listener > Backend Listener.
  3. Modify the Backend Listener Implementation and select org.datadog.jmeter.plugins.DatadogBackendClient from the drop-down.
  4. Set the apiKey variable to your Datadog API key.
  5. Run your test and validate that metrics have appeared in Datadog.

The plugin has the following configuration options:

NameRequiredDefault valuedescription
apiKeytrueNAYour Datadog API key.
datadogUrlfalsehttps://api.datadoghq.com/api/You can configure a different endpoint, for instance https://api.datadoghq.eu/api/ if your datadog instance is in the EU
logIntakeUrlfalsehttps://http-intake.logs.datadoghq.com/v1/input/You can configure a different endpoint, for instance https://http-intake.logs.datadoghq.eu/v1/input/ if your datadog instance is in the EU
metricsMaxBatchSizefalse200Metrics are submitted every 10 seconds in batches of size metricsMaxBatchSize
logsBatchSizefalse500Logs are submitted in batches of size logsBatchSize as soon as this size is reached.
sendResultsAsLogsfalsefalseBy default only metrics are reported to Datadog. To report individual test results as log events, set this field to true.
includeSubresultsfalsefalseA subresult is for instance when an individual HTTP request has to follow redirects. By default subresults are ignored.
excludeLogsResponseCodeRegexfalse""Setting sendResultsAsLogs will submit all results as logs to Datadog by default. This option lets you exclude results whose response code matches a given regex. For example, you may set this option to [123][0-5][0-9] to only submit errors.
customTagsfalse""Comma-separated list of tags to add to every metric

Troubleshooting

If for whatever reason you are not seeing JMeter metrics in Datadog, check your jmeter.log file, which should be in the /bin folder of your JMeter installation.

Contributing

Reporting a bug and feature requests

Pull requests

Have you fixed an issue or adding a new feature? Many thanks for your work and for letting other to benefit from it.

Here are some generic guidelines:

Your pull request must pass the CI before we can merge it. If you're seeing an error and don't think it's your fault, it may not be. Let us know in the PR and we'll get it sorted out.