Awesome
locust-influxdb-listener
Package that uses locust 'event' hooks to push locust related events to an influxDB database.
Prerequisites
This package requires locustIO v1.5.0 or greater.
Installation
Install using your favorite package installer:
pip install locust-influxdb-listener
# or
easy_install locust-influxdb-listener
Usage
Import the library and use the event.init
hook to register the listener.
...
from locust_influxdb_listener import InfluxDBListener, InfluxDBSettings
@events.init.add_listener
def on_locust_init(environment, **_kwargs):
"""
Hook event that enables starting an influxdb connection
"""
# this settings matches the given docker-compose file
influxDBSettings = InfluxDBSettings(
influx_host = 'localhost',
influx_port = '8086',
user = 'admin',
pwd = 'pass',
database = 'test-project'
)
# start listerner with the given configuration
InfluxDBListener(env=environment, influxDbSettings=influxDBSettings)
...
Example
You can find a working example under the examples folder
InfluxDB with Grafana
We have included a working example docker-compose.yml
file that can be used to spin a reporting setup in case you don't have one.
(Make sure you have docker
and docker-compose
installed and just run:
docker-compose up
Configuration
Once grafana is running (by default on port: 3000) https://localhost:3000
, you need to:
-
Connect to influxdb as the datasource:
- Host: https://influxdb:8086
- User: admin
- Password: pass
-
Import a new dashboard. We have provided a custom dashboard for you
locust-grafana-dashboard.json
that just works out of the box with the locust-events that the listener will emmit.