artillery-plugin-statsd v2.2.1
StatsD output for Artillery stats
This Artillery plugin allows you to publish the stats produced by Artillery CLI to StatsD in real-time.
Usage
Install
npm install -g artillery-plugin-statsd - if you've installed Artillery globally
npm install artillery-plugin-statsd otherwise.
Use
Enable the plugin by adding it in your test script's config.plugins section:
{
"config": {
// ...
"plugins": {
"statsd": {
"host": "localhost",
"port": 8125,
"prefix": "artillery"
}
}
}
// ...
}host, port, and prefix are optional; the values above are the defaults.
Published metrics
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.
scenariosCreatedscenariosCompletedrequestsCompletedlatency.minlatency.maxlatency.medianlatency.p95latency.p99rps.countrps.meanscenarioDuration.minscenarioDuration.maxscenarioDuration.medianscenarioDuration.p95scenarioDuration.p99scenarioCounts.0,scenarioCounts.0etccodes.200,codes.301etcerrors.ECONNREFUSED,errors.ETIMEDOUTetcmatchesconcurrencypendingRequests
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 allscenarioDurationmetrics"skipList": "latency.max"- would skip only thelatency.maxmetric"skipList": "scenarioDuration, latency.max"- a comma separated list can be used to pass in multiple values.
Using with Librato
This plugin can be used to publish metrics to Librato:
Install StatsD with:
npm install statsdAdd Librato backend to StatsD:
cd /path/to/statsdnpm install statsd-librato-backendEnable the backend in your StatsD config:
{ librato: { email: "mylibrato@email.com", token: "a161e2bc22b1bdd0cfe90412token10498token22dd52cat792doge1ab5a1d32" }, backends: ['statsd-librato-backend'] }Run StatsD and use Artillery with this plugin.
License
artillery-plugin-statsd is distributed under the terms of the ISC license.