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

wrkloadgeneratortoolbox-0.1.5.tar.gz (18.6 kB view details)

Uploaded Source

Built Distribution

wrkloadgeneratortoolbox-0.1.5-py3-none-any.whl (26.4 kB view details)

Uploaded Python 3

File details

Details for the file wrkloadgeneratortoolbox-0.1.5.tar.gz.

File metadata

  • Download URL: wrkloadgeneratortoolbox-0.1.5.tar.gz
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.6.9

File hashes

Hashes for wrkloadgeneratortoolbox-0.1.5.tar.gz
Algorithm Hash digest
SHA256 3ae4a650cf421dd4050f7830aaa8f474b7d951a665948a449d68bf41d9358961
MD5 a5425ba2522146f2e61cc6f8dea68ec9
BLAKE2b-256 ca2f902c0568bfb2fb23a4a72a3636764f422c5a19daab8aefdfc550ea5f9f9d

See more details on using hashes here.

File details

Details for the file wrkloadgeneratortoolbox-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: wrkloadgeneratortoolbox-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 26.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.6.9

File hashes

Hashes for wrkloadgeneratortoolbox-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 c2551f48a5f93d7295c95ea2519584bb6720d3d59690e4559328784b2fd13785
MD5 23d2fced26582abb0e5174f4a1b2e20d
BLAKE2b-256 bd2ad7615d81fb0b8bc5a20300df58c5c4ccb1f15cb317e083666fc0b7cacc54

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