2.0.0 • Published 7 years ago

@openfin/express-statsd v2.0.0

Weekly downloads
9
License
MIT
Repository
-
Last release
7 years ago

express-statsd

Simple middleware that provide basic statsd metrics for your express app.

npm i @openfin/express-statsd

Usage

import statsdMiddleware from '@openfin/express-statsd';
app.use(statsdMiddleware(opts))
import * as express from 'express';
import statsdMiddleware from '@openfin/express-statsd';
import * as HotShots from 'hot-shots'; // Replace with statsd library of choice

const statsd = new HotShots();
const app = express();
app.use(
  statsdMiddleware({
    increment: statsd.increment.bind(statsd),
    timing: statsd.timing.bind(statsd)
  })
);
app.get('/', function(req, res) {
  res.status(200).send('Getting them hot metrics');
});

app.listen(8080);
 

Options

tags

The tags to send with each metric. Not all statsd providers support this. Default: method:<request method> protocol:<request protocol> path:<request path> For the timing metric an additional tag is sent. response_code:<response code>

increment(<key>.response_code.<response_code>, 1, 1, tags) => void

The increment statsd call. Exposed as service.http.response_code.<response_code> Note if increment and timing methods are not present the middleware will attempt to use sendStats. If thats also not present it will throw an error.

timing(<key>.response_time, <responseTimeInMs>, 1, tags) => void

The timing statsd call.

key:string

The key prefix used in the metric. Defaults to service.http

sendStats(request, response, responseTimeInMs, tags) => void

If set this function will be called instead of the increment and timing ones. Allowing you to send your own metrics.

onErr(err)

Called if the response pipe errors

2.0.0

7 years ago

1.0.6

7 years ago

1.0.5

7 years ago

1.0.4

7 years ago

1.0.3

7 years ago

1.0.2

7 years ago

1.0.0

7 years ago