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

Edit this page on GitHub