Skip to main content

A tool to run wrk and wrk2 benchmarks and store their output.

Project description

Build status pypi Test coverage

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

  1. install
pip install wrktools
  1. verify that the cli works (optional)
wrktoolbox --help
  1. 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
  1. 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


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)

Uploaded Source

Built Distribution

wrktools-0.1.9-py3-none-any.whl (26.1 kB view details)

Uploaded Python 3

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

Hashes for wrktools-0.1.9.tar.gz
Algorithm Hash digest
SHA256 1203a2b34d2e10d2938ce1d0508e7376dd8f8799105cf91971196fa5da62bfd6
MD5 364548cbcab488196ca71e1ee46f5f28
BLAKE2b-256 6828ad7a00d7b83c4fd2d6c22e5c66be767ad4c1f0d2ede384e9d3b598879e1e

See more details on using hashes here.

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

Hashes for wrktools-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 c4b2c6a49d7333453e8bb790332c685450a2ceba6c184db42a4da40438ae0c23
MD5 28595cca87747be1d5df56f6bda199cd
BLAKE2b-256 d7943c4c30fa72ccacb195917c0e360811e15b447e6acf90854ed9b5a3ae1892

See more details on using hashes here.

Supported by

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