Instrumental is a application monitoring platform built for developers who want a better understanding of their production software. Powerful tools, like the Instrumental Query Language, combined with an exploration-focused interface allow you to get real answers to complex questions, in real-time.
This is a pluggable StatsD backend for sending metrics to Instrumental.
- StatsD versions >= 0.3.0.
- An Instrumental account.
$ cd /path/to/statsd
$ npm install statsd-instrumental-backend
See our example config file for a complete StatsD configuration.
Otherwise, add the following basic configuration information to your StatsD config file.
{
instrumental: {
key: "[project token]", // REQUIRED
secure: true, // OPTIONAL (boolean), whether or not to use secure protocol to connect to Instrumental, default true
verifyCert: true, // OPTIONAL (boolean), should we attempt to verify the server certificate before allowing communication, default true
timeout: 10000, // OPTIONAL (integer), number of milliseconds to wait for establishing a connection to Instrumental before giving up, default 10s
recordCounterRates: true, // OPTIONAL (boolean) whether or not to send ".rate" metrics with counters, default true
metricPrefix: "", // OPTIONAL (string) this will be prepended (with a dot) to ALL of your metrics
metricFiltersExclude: [], // OPTIONAL (array of regexes) any metrics matching these filters will be dropped. e.g, [/\.rate$/, /\.[^\.]*_99$/] would filter out counter rates and extra metrics for stats like upper_99, mean_99, etc.
metricFiltersInclude: [] // OPTIONAL (array of regexes) any metrics _NOT_ matching at least one of these filters will be dropped
}
}
Metrics can be filtered with either the metricFiltersExclude
or metricFiltersInclude
options. Note that for a metric to be sent, it must match at least one include and no excludes. An empty or missing metricFiltersInclude option will allow all metrics (assuming the exclusion filter does not exclude any).
This is already done if you are using our example configuration.
Otherwise, add statsd-instrumental-backend
backend to the list of StatsD
backends in the StatsD configuration file:
{
backends: ["statsd-instrumental-backend"]
}
Start/restart the statsd daemon and your StatsD metrics should now be pushed to your Instrumental account.
None
Contributing:
- Fork the project
- Make your feature addition or bug fix
- Commit. Do not mess with package.json, version, or history.
- Send a pull request. Bonus points for topic branches.