A tool to run wrk and wrk2 benchmarks and store their output.
Project description
wrktoolbox
A tool to run wrk and wrk2 benchmarks, store their output, and generate reports.
Features
- Support for YAML and JSON configuration files, to define benchmark suites
- Parses the output of wrk and wrk2 HTTP benchmarking tools
- Possibility to define performance goals, which are evaluated and stored with results
- Strategy to store benchmarks results and whole suite configuration
- Support for plugins, loaded dynamically to define new types of stores, performance goals, and reports writers
- Strategy to produce reports of results, for example to XLSX, with wrktoolbox-xlsx - see Wiki
- Docker images for Ubuntu and Alpine
- CLI
Quick example
- install
pip install wrktools
- verify that the cli works (optional)
wrktoolbox --help
- prepare a YAML, or JSON file with configuration. A basic example, with a single type of benchmark, looks like this:
# the array of benchmarks contains the configuration of benchmarks to run
benchmarks:
- url: https://this-is-an-example.it/api/alive
threads: 10 # threads count
concurrency: 100 # concurrent users
duration: 30 # test duration in seconds
# the type of stores to use, to collect benchmark results
# it is possible to define custom stores, using plugins;
# for example to store results in a database, or send them to an API
stores:
- json
- run a suite of benchmarks using a settings file
wrktoolbox run --settings basic.yaml
Refer to examples folder for an example of full configuration file, defining plugins for authentication and custom store.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
wrktools-0.1.9.tar.gz
(19.8 kB
view details)
Built Distribution
wrktools-0.1.9-py3-none-any.whl
(26.1 kB
view details)
File details
Details for the file wrktools-0.1.9.tar.gz
.
File metadata
- Download URL: wrktools-0.1.9.tar.gz
- Upload date:
- Size: 19.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1203a2b34d2e10d2938ce1d0508e7376dd8f8799105cf91971196fa5da62bfd6 |
|
MD5 | 364548cbcab488196ca71e1ee46f5f28 |
|
BLAKE2b-256 | 6828ad7a00d7b83c4fd2d6c22e5c66be767ad4c1f0d2ede384e9d3b598879e1e |
File details
Details for the file wrktools-0.1.9-py3-none-any.whl
.
File metadata
- Download URL: wrktools-0.1.9-py3-none-any.whl
- Upload date:
- Size: 26.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c4b2c6a49d7333453e8bb790332c685450a2ceba6c184db42a4da40438ae0c23 |
|
MD5 | 28595cca87747be1d5df56f6bda199cd |
|
BLAKE2b-256 | d7943c4c30fa72ccacb195917c0e360811e15b447e6acf90854ed9b5a3ae1892 |