Skip to main content

A Locust plugin to log load test metrics to observability tools (DB-free).

Project description

Locust Telemetry

Tests Release codecov License Docs

Locust Telemetry is a modular observability plugin for the Locust load-testing framework.

It emits structured telemetry from load tests so you can correlate request behavior with system metrics using modern observability tools.

📖 Full documentation: https://locust-telemetry.readthedocs.io


Why Locust Telemetry?

Load testing is most effective when request-level metrics can be correlated with system signals like CPU, memory, network usage, and errors.

Locust Telemetry bridges this gap by exporting structured telemetry that integrates cleanly with existing observability stacks.


Key Features

  • Structured Telemetry Test lifecycle events, request metrics, and system metrics

  • Multiple Backends JSON logs or OpenTelemetry metrics

  • OpenTelemetry Native OTLP export to Prometheus, Grafana, Datadog, New Relic, and more

  • Distributed Support Works with Locust master–worker mode

  • Extensible Design Add custom recorders and instruments

Traces and spans are planned but not yet supported.


Installation

pip install locust-telemetry

Quick Start

1. Initialize the plugin

In your locustfile.py:

from locust_telemetry import entrypoint

entrypoint.initialize()

2. Run Locust with telemetry enabled

JSON telemetry (logs):

locust -f locustfile.py --testplan mytest --enable-telemetry-recorder json

OpenTelemetry metrics:

locust -f locustfile.py --testplan mytest --enable-telemetry-recorder otel

➡️ See the Configuration section in the docs for all available options.


Local Demo (Docker)

A complete local observability stack is provided to quickly try both JSON and OpenTelemetry telemetry:

git clone https://github.com/platform-crew/locust-telemetry.git
cd locust-telemetry/examples/local
make build && make up

📘 Full walkthrough: https://locust-telemetry.readthedocs.io/en/latest/examples.html


Dashboard Preview

JSON Telemetry (Loki / Grafana Logs) JSON Dashboard JSON Dashboard

OpenTelemetry Metrics (Prometheus / Grafana) OTel Dashboard OTel Dashboard


Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.


Author

Swaroop Shubhakrishna Bhat (@ss-bhat)

Thanks to all contributors ❤️


License

Licensed under the Apache License 2.0. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

locust_telemetry-2.0.1.tar.gz (30.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

locust_telemetry-2.0.1-py3-none-any.whl (36.8 kB view details)

Uploaded Python 3

File details

Details for the file locust_telemetry-2.0.1.tar.gz.

File metadata

  • Download URL: locust_telemetry-2.0.1.tar.gz
  • Upload date:
  • Size: 30.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for locust_telemetry-2.0.1.tar.gz
Algorithm Hash digest
SHA256 621b6d37c2ac16482d09f3ad4450682db6f8579d9a6450ebe85b353f0cd310f9
MD5 90f1fb1a08eb11315ada0824b358ccc9
BLAKE2b-256 82e44fc82254cfe5a7af010f3c6e00ed9388286e4a435b9a6f8aebfa1d2a00a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for locust_telemetry-2.0.1.tar.gz:

Publisher: release.yaml on platform-crew/locust-telemetry

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file locust_telemetry-2.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for locust_telemetry-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c7a0e7dba24091b0c8ecee7deebac1fab978d97dd96b557e7497c4e2b3913299
MD5 224f27e544ff26e9714c7f60e743b96e
BLAKE2b-256 1375a6e586c3c84c074d3b704043c664f1f593381c8a4cc8d6e42a6258dc86c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for locust_telemetry-2.0.1-py3-none-any.whl:

Publisher: release.yaml on platform-crew/locust-telemetry

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page