Sha256: a3cafd5fa35e4f90c6e4e4c19d417480f655950cd08f3ae3e966da55842160b3

Contents?: true

Size: 1.31 KB

Versions: 33

Compression:

Stored size: 1.31 KB

Contents

# Benchmark scripts

This directory contains benchmark scripts that can be used to gauge the
performance impact of changes.

As mentioned in the contributing guidelines, this library is used heavily in
production at Shopify in many of our hot code paths. This means that we care a
lot about changes not introducing performance regressions. Every pull request
that changes the code path to send metrics should include benchmarks
demonstrating the performance impact of the changes.

This directory contains two scripts to help with benchmarking.

- `send-metrics-to-dev-null-log` exercises the code path to construct metrics.
- `send-metrics-to-local-udp-listener` will also exercise the code path to
  actually send a StatsD packet over UDP.

To benchmark your changes:

1. Make sure the benchmark script will actually cover your changes.
   - If not, please create a new benchmark script that does.
   - Do not commit this script to the repository (yet), so it will continue to
     be available if you check out another branch.
2. Run these scripts on your pull request branch. The results will be stored in
   a temporary file.
3. Checkout the latest version of `master`.
4. Run the benchmark again. The benchmark script will now print a comparison
   between your branch and master.
5. Include the output in your pull request description.

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
statsd-instrument-3.5.11 benchmark/README.md
statsd-instrument-3.5.10 benchmark/README.md
statsd-instrument-3.5.9 benchmark/README.md
statsd-instrument-3.5.8 benchmark/README.md
statsd-instrument-3.5.7 benchmark/README.md
statsd-instrument-3.5.6 benchmark/README.md
statsd-instrument-3.5.5 benchmark/README.md
statsd-instrument-3.5.4 benchmark/README.md
statsd-instrument-3.5.3 benchmark/README.md
statsd-instrument-3.5.2 benchmark/README.md
statsd-instrument-3.5.1 benchmark/README.md
statsd-instrument-3.5.0 benchmark/README.md
statsd-instrument-3.4.0 benchmark/README.md
statsd-instrument-3.3.0 benchmark/README.md
statsd-instrument-3.2.1 benchmark/README.md
statsd-instrument-3.2.0 benchmark/README.md
statsd-instrument-3.1.2 benchmark/README.md
statsd-instrument-3.1.1 benchmark/README.md
statsd-instrument-3.1.0 benchmark/README.md
statsd-instrument-3.0.2 benchmark/README.md