Statsd output plugin for Artillery
npm install artillery-plugin-statsdThis Artillery plugin allows you to publish the
stats produced by Artillery CLI to StatsD in real-time.
npm install -g artillery-plugin-statsd - if you've installed Artillery globally
npm install artillery-plugin-statsd otherwise.
Enable the plugin by adding it in your test script's config.plugins section:
``javascript`
{
"config": {
// ...
"plugins": {
"statsd": {
"host": "localhost",
"port": 8125,
"prefix": "artillery"
}
}
}
// ...
}
host, port, and prefix are optional; the values above are the defaults.
By default, all stats from artillery are reported. This includes any custom stats you may have in place. As of artillery@1.5.0-17, the metrics you can expect to see are as follows.
- scenariosCreatedscenariosCompleted
- requestsCompleted
- latency.min
- latency.max
- latency.median
- latency.p95
- latency.p99
- rps.count
- rps.mean
- scenarioDuration.min
- scenarioDuration.max
- scenarioDuration.median
- scenarioDuration.p95
- scenarioDuration.p99
- scenarioCounts.0
- , scenarioCounts.0 etccodes.200
- , codes.301 etcerrors.ECONNREFUSED
- , errors.ETIMEDOUT etcmatches
- concurrency
- pendingRequests
-
Metrics will be added or removed based on what artillery decides to send.
If a metric is null or cannot be resolved to a number, the default value of 0 is sent. You can change the default value in the configuration by passing in the property default. Example:
"default": 100000 - Metrics are sent with gauges so avoid negative numbers.
Metrics can be skipped by passing in an additional configuration property skipList. Skip list values can look like the following:
- "skipList": "scenarioDuration" - would skip all scenarioDuration metrics"skipList": "latency.max"
- - would skip only the latency.max metric"skipList": "scenarioDuration, latency.max"
- - a comma separated list can be used to pass in multiple values.
This plugin can be used to publish metrics to Librato:
0. Install StatsD with:
npm install statsd
1. Add Librato backend to StatsD:
cd /path/to/statsdnpm install statsd-librato-backend
Enable the backend in your StatsD config:
`javascript``
{
librato: {
email: "mylibrato@email.com",
token: "a161e2bc22b1bdd0cfe90412token10498token22dd52cat792doge1ab5a1d32"
},
backends: ['statsd-librato-backend']
}
3. Run StatsD and use Artillery with this plugin.
artillery-plugin-statsd is distributed under the terms of the
ISC license.