@openfin/express-statsd
TypeScript icon, indicating that this package has built-in type declarations

2.0.0 • Public • Published

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

Readme

Keywords

none

Package Sidebar

Install

npm i @openfin/express-statsd

Weekly Downloads

0

Version

2.0.0

License

MIT

Last publish

Collaborators

  • ameet-openfin
  • jmransegnola
  • marek_openfin
  • yoge-openfin
  • nil.ffej
  • gilesstevenson-openfin
  • eheyder
  • newaz.sharif
  • efraim-herstic
  • royhafin
  • openfincolinhu
  • openfin-johans
  • alan15008
  • openfin-ci-gh
  • hina-khalid
  • ife-dev1
  • mjosling
  • elliott.burr
  • vsaw3
  • gallak-openfin
  • galim.kaudinov
  • hzhi0209
  • andy.westacott
  • __tomasz__
  • cameronopenfin
  • jennrondeau
  • dhilan
  • benstubbington
  • davidcoxon-of
  • openfin-jeff
  • gouthamc
  • hannahmcmillen
  • xyopenfin
  • smocarski
  • eugeneross-openfin
  • imansuri
  • manamiueda
  • sakibahmad
  • shahossain
  • openfinbrandon
  • pierrebaize
  • noyangunday
  • michaelmcoates
  • johnmandia-openfin
  • rdepena
  • tgoc99
  • wenjunche
  • harsimran.openfin.singh
  • luiemilio
  • licui3936
  • connormccafferty
  • adam.saland
  • openfin-ci
  • chrishobsonexpero
  • richbrowne-openfin
  • azizyok
  • openfin-gavin
  • oblarg