Gatling Enterprise Edition can push load test metrics — response times, throughput, error rates, virtual user counts, and more — directly to your existing observability platform. This lets you overlay load test behavior on application traces, infrastructure KPIs, and logs in a single dashboard, dramatically accelerating root cause analysis during and after performance runs.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/gatling/gatling.io-doc/llms.txt
Use this file to discover all available pages before exploring further.
All observability integrations are available exclusively on Gatling Enterprise Edition with private locations. Each integration is configured through system properties in your control-plane configuration.
Supported Platforms
Datadog
Push metrics and events to your Datadog account for correlation with infrastructure and APM data.
Dynatrace
Send metrics and CUSTOM_INFO events to Dynatrace; also inject request attributes for distributed tracing.
InfluxDB
Write metrics using the InfluxDB Line Protocol — compatible with InfluxDB 1, 2, 3, and QuestDB.
New Relic
Send metrics and events to New Relic for unified observability across load tests and infrastructure.
OpenTelemetry
Export metrics to any OTel-compatible backend: Prometheus, Elastic, Splunk, and more.
Datadog
Prerequisites
- A valid Datadog API key (for metrics)
- A valid Datadog Application key (for events)
- Your Datadog site identifier (e.g.,
datadoghq.com,datadoghq.eu) - Gatling Enterprise Edition private locations with network access to Datadog
Installation
Follow the official Datadog Integration documentation to install the Gatling Enterprise integration in your Datadog account, then add the following system properties to your control-plane configuration:gatling.enterprise.dd from the configuration.
Pushed Data
Events are generated at test injectionstart and end under the source:gatling-enterprise tag, with tags for team, test, run_id, and phase.
Metrics (all prefixed gatling_enterprise.) include:
| Metric | Type | Description |
|---|---|---|
user.start_count / user.end_count | count | Virtual users started/finished per scenario |
user.concurrent | gauge | Concurrent virtual users per scenario |
request.count | count | Requests sent per scenario/group/request |
response.count | count | Responses per status per scenario/group/request |
response.response_time.* (mean, min, p50, p95, p99, p999, max) | gauge | Response time percentiles |
response.code | count | HTTP response codes per scenario/group/request |
group.count | count | Group executions per scenario/group |
group.duration.* / group.cumulated.* (mean, min, p50, p95, p99, p999, max) | gauge | Group duration and cumulated response time percentiles |
dns.count | count | DNS resolution requests |
dns.time.* (mean, min, p50, p95, p99, p999, max) | gauge | DNS resolution time percentiles |
tcp.open_count / tcp.close_count | count | TCP connections opened/closed |
tcp.connection_count / tls.handshake_count | count | TCP connections / TLS handshakes by status |
tcp.connect_time.* (mean, min, p50, p95, p99, p999, max) | gauge | TCP connection time percentiles |
tls.handshake_time.* (mean, min, p50, p95, p99, p999, max) | gauge | TLS handshake time percentiles |
tcp.state_count | gauge | TCP connections by state |
bandwidth_usage.sent / bandwidth_usage.received | count | Bandwidth usage |
cpu.user / cpu.sys | gauge | Load generator CPU utilization |
mem.ram.max / mem.ram.used | gauge | Load generator RAM usage |
mem.heap.max / mem.heap.committed / mem.heap.used | gauge | Load generator JVM heap usage |
Custom Tags
Add custom tags by setting system properties matchinggatling.enterprise.dd.tags.<tag_name> = <value>, either at the control-plane level or in your test configuration.
Dynatrace
Prerequisites
- A Dynatrace API key with the
metrics.ingestandevents.ingestpermissions - Your Dynatrace environment ID (e.g.,
abc12345fromhttps://abc12345.apps.dynatrace.com) - Gatling Enterprise Edition private locations with network access to Dynatrace
Installation
HTTP Request Tracing
In addition to the Enterprise Edition push integration, Gatling simulations can inject custom HTTP headers into every generated request so Dynatrace can tag distributed traces with load test context. Use thesign function on HttpProtocol to set the x-dynatrace-test header with these key/value pairs:
| Acronym | Meaning | Description |
|---|---|---|
VU | Virtual User ID | Unique identifier for the virtual user |
SI | Source ID | Identifies the load testing tool (Gatling) |
TSN | Test Step Name | Logical step within the script (e.g., Login) |
LSN | Load Script Name | Groups steps into a transaction |
LTN | Load Test Name | Uniquely identifies the test execution |
PC | Page Context | Document context of the processed page |
InfluxDB
Compatibility
This integration supports any backend compatible with the InfluxDB Line Protocol (ILP) over HTTP, including InfluxDB 1, 2, and 3, and alternative products such as QuestDB.Installation
Schema
Gatling Enterprise Edition writes data to the following measurements. All measurements include common tagsrun_id, test, team, and load_generator.
| Measurement | Specific Tags | Fields |
|---|---|---|
gatling_enterprise_users | scenario | start_count, end_count, max_concurrent |
gatling_enterprise_requests | scenario, group, request | count |
gatling_enterprise_responses | scenario, group, request, status | count, time_mean, time_min, time_p50, time_p95, time_p99, time_p999, time_max |
gatling_enterprise_responses_by_code | scenario, group, request, code | count |
gatling_enterprise_group_durations | scenario, group, status | count, time_mean, time_min, time_p50, time_p95, time_p99, time_p999, time_max |
gatling_enterprise_group_cumulated | scenario, group, status | count, time_mean, time_min, time_p50, time_p95, time_p99, time_p999, time_max |
gatling_enterprise_dns | hostname, status | count, time_mean, time_min, time_p50, time_p95, time_p99, time_p999, time_max |
gatling_enterprise_connections | remote | bandwidth_usage_sent, bandwidth_usage_received, tcp_open_count, tcp_close_count |
gatling_enterprise_tcp_states | remote, state | count |
gatling_enterprise_tcp_connects | remote, status | count, time_mean, time_min, time_p50, time_p95, time_p99, time_p999, time_max |
gatling_enterprise_tls_handshakes | remote, status | count, time_mean, time_min, time_p50, time_p95, time_p99, time_p999, time_max |
gatling_enterprise_cpu | — | user, sys |
gatling_enterprise_mem | — | ram_max, ram_used, heap_max, heap_committed, heap_used |
New Relic
Prerequisites
- A New Relic license key (for metrics and events APIs)
- Your New Relic account ID (for events)
Installation
Custom Attributes
Add extra attributes to all pushed metrics by setting system properties matching:Events
New Relic receives events of typeGatlingTestStart and GatlingTestEnd with attributes: run_id, test, team, source (gatling-enterprise).
OpenTelemetry
The OpenTelemetry integration forwards Gatling Enterprise Edition metrics to an OpenTelemetry Collector, from which they can be routed to any compatible backend — including Prometheus, Elastic, Splunk, Datadog (via OTel), Dynatrace, and New Relic.Prerequisites
- A running OpenTelemetry Collector accessible from your private locations
- Collector endpoint URLs for metrics (and optionally logs)
Installation
Metric Types
Gatling Enterprise Edition sends all the same metric categories as with direct integrations. WhendeltaExponentialHistogramsSupported is false (default), response time and duration distributions are sent as separate gauge metrics (mean, min, p50, p95, p99, p999, max). When true, they are sent as delta exponential histograms.
Resource Attributes
All metrics and logs share the following OTel resource attributes:| Attribute | Value |
|---|---|
run.id | ID of the test run |
service.name | gatling.enterprise |
team.name | Name of the owning team |
test.name | Name of the test |
Log Events
Whenlogs.endpoint is configured, Gatling Enterprise Edition emits log events:
- Event name:
gatling.run.startorgatling.run.end - Body:
startorend