InfluxDB integration for Gatling
Send load test metrics to InfluxDB.
Introduction
The InfluxDB integration allows Gatling Enterprise Edition to send load-test metrics - such as response times, throughput, and error rates - directly into an InfluxDB time series database. Once enabled, performance data from Gatling Enterprise Edition is sent to InfluxDB, where it can be correlated with infrastructure and application metrics already collected in your InfluxDB database.
With this integration in place, you can:
- Monitor Gatling scenarios alongside server-level KPIs (CPU, memory, network) in a single dashboard.
- Investigate performance issues more effectively by overlaying load-test metrics on traces, logs, and resource utilization charts.
Prerequisites
- A valid InfluxDB API key (for the metrics)
- Your InfluxDB database (we support InfluxDB 1, 2 and 3)
- A Gatling Enterprise Edition account with private locations that can connect to the InfluxDB database.
Install the InfluxDB integration
The InfluxDB integration requires installation steps on your private locations control plane.
In your control-plane configuration, in the section system-properties, add:
control-plane {
locations = [
{
system-properties {
"gatling.enterprise.influx.api.key" = "<your InfluxDB API key>"
"gatling.enterprise.influx.api.url" = "<your InfluxDB API url>"
}
}
]
}
// InfluxDB 1
http(s)//host:port/api/v3/write_lp?db=mydb&precision=s
// InfluxDB 2
http(s)//host:port/api/v2/write?org=myorg&bucket=mybucket&precision=s
// InfluxDB 3
http(s)//host:port/write?db=mydb&precision=second
Uninstall the InfluxDB integration
To remove the link between Gatling Enterprise Edition and InfluxDB, remove the lines containing gatling.enterprise.influx in your control-plane configuration.
Tables schema
Gatling Enterprise Edition creates the following schema in your InfluxDB database:
| Table | Tags | Fields |
|---|---|---|
| gatling_enterprise_users | runId, test, team, load_generator, scenario |
start_count, end_count, max_concurrent |
| gatling_enterprise_requests | runId, test, team, load_generator, scenario, group, request |
count |
| gatling_enterprise_responses | runId, test, team, load_generator, scenario, group, request, status |
count, time_min, time_p95, time_p99, time_p999, time_max |
| gatling_enterprise_responses_by_code | runId, test, team, load_generator, scenario, group, request,code |
count |
| gatling_enterprise_connections | runId, test, team, load_generator, remote |
bandwidth_usage_sent, bandwidth_usage_received, tcp_open_count, tcp_close_count |
| gatling_enterprise_tcp_connects | runId, test, team, load_generator, remote, status |
count, time_min, time_p95, time_p99, time_p999, time_max |
| gatling_enterprise_tls_handshakes | runId, test, team, load_generator, remote, status |
count, time_min, time_p95, time_p99, time_p999, time_max |