Enable the integration of Dynatrace

in Dynatrace

To enable the integration of Dynatrace and NeoLoad, you need to perform some steps in Dynatrace first.

You need to manually put a tag on a Dynatrace service at the traffic entry point of your application, typically your web front servers or proxies. From there, the integration willl auto-tag all connected hosts, services and processes in the Dynatrace smartscape.

At the end of the run, NeoLoad cleans up the whole tag configuration.

in the NeoLoad project
  1. In the NeoLoad menu bar, click Edit > Preferences > Project settings > Dynatrace.
  2. Select Enable Dynatrace information.
  3. In the Server url field, enter the identifier of the tested Dynatrace environment:

    Tip: If you work with an on-premise Dynatrace deployment with self-signed certificate, you may encounter SSL certificate error messages that can be fixed with quite a lot of configuration. To ease the process and be able to work with self-signed on-premise instances, you may set the property stated below to true.
    In the installation directory of NeoLoad, in <install-dir>/conf/controller.properties
    [General]
    dynatrace.tls.insecure=true

  4. In the Api token field, enter the API key of your Dynatrace account that you created (or retrieved) from menu Settings/Integration/Dynatrace API of the Dynatrace interface.
  5. If you need a proxy to go to Dynatrace, you can configure a proxy in the NeoLoad General settings by clicking the Proxy configuration in the general settings link. See Use a proxy for more details.

    Deprecate note: the checkbox Use Internet Proxy is deprecated, please uncheck it and configure the Dynatrace proxy in the NeoLoad General settings for all your Controllers.

    nl-prefprojectdynatrace-7.9

The following access scopes must be defined for your token to have full access to all Dynatrace integration functionalities:

Access problem and event feed, metrics and topology

To retrieve and send metrics

Capture Request Data

To identify traffic

Read configuration

To create anomaly detection rules

Write configuration

To create anomaly detection rules

Read entities using API V2

To retrieve entities to monitor

Write entities using API V2

To delete the tags created by NeoLoad at the end of the test

in the NeoLoad scenario

You need to specify the tag that has been set on the Dynatrace service at the traffic entry point of your application.

It allows you to manage several applications (with different tags) in the same Neoload Project in different scenarios.

Neoload will monitor the Dynatrace entities of "Service"-type that have at least ALL tags specified in the Tags field of the APM tab meaning that a "AND" operation is applied on the list of tags. It will then monitor all entities of "Host"- and "Process group"-types connected to the "Services" mentioned above, monitored in the Dynatrace smartscape. To keep the test result readable, 350 entities at most can be monitored during the test. You must set tags to match this number of entities.

Information: The colon ":" character is reserved by Dynatrace to name tags created automatically. They must be avoided in manual tags. If you still want to create a manual tag in Dynatrace containing the colon ":" character, you will need to specify "\:" in the Tags field of your Neoload scenario.

Example:

Automatic tag in Dynatrace: app:front-end

In Neoload: app:front-end

Manual tag in Dynatrace: app:front-end

In Neoload: app\:front-end

NLG-AdvancedScenario-APM

Monitoring

Monitoring is enabled by creating a Monitor (see Create a Dynatrace monitor for more information) and by choosing the metrics you want to monitor.

For monitoring to take place, you need to:

The Dynatrace entities that will be monitored and for which metrics will be retrieved are: all services, processes and hosts that are at 3 levels of depth of each service specified with a tag.

Send events to Dynatrace services

At the end of the test, an event is sent to each monitored service of Dynatrace.

NLG-DynatraceEvent

Send metrics to Dynatrace

NeoLoad sends global statistics of the test to Dynatrace so that they can be used as custom metrics in Dynatrace dashboards.

These metrics are:

Dynatrace integration from as-code

You can override the project settings of the Dynatrace integration with as-code yaml files.
For more information, please refer to the Project settings GitHub documentation.

You can also override the Scenario advanced settings of the APM tab with as-code yaml files.
For more information, please refer to the APM Configuration GitHub documentation.

You cannot however create a Monitor from as-code. That's why you need to load a project containing at least one Dynatrace Monitor.

Identify NeoLoad traffic

To identify in Dynatrace the traffic created by NeoLoad, NeoLoad adds a header in the requests it sends. The name of the header is X-Dynatrace-Test.

NeoLoad creates in Dynatrace the rules that allow to read the header to identify the traffic created by NeoLoad so that you can easily isolate the traffic coming exclusively from NeoLoad.

Define anomaly rules

You have the option of having Dynatrace detect anomalies during the test. To that end, you need to define anomaly rules in NeoLoad.

For more information, please refer to the documentation of the Anomaly detection section in the APM tab of your Scenario advanced settings.