Making reporting basic health metrics to a local statsd instance easy.
npm install node-metricsEasily forward a node app's basic health metrics to a local statsd instance.
Install dependencies:
`` sh`
npm install
Run tests:
` sh`
npm test
1. Install
` sh`
npm install node-metrics
2. Configure
Create a Lynx instance:
` js
var Lynx = require('lynx'),
dgram = require('dgram');
var metrics = new Lynx('localhost', 8125, {
socket: dgram.createSocket('udp4'),
scope: 'YOUR_NAMESPACE'
});
`
node-metrics provides middleware and library functions for collecting basic health metrics.
` js`
require('node-metrics').nodeMemoryGauge(metrics);
Or for node connections:
` js`
require('node-metrics').nodeConnectionsGauge(metrics, server);
Where server is an http server instance (as supplied by app.listen() ).
To configure all gauges at once, do:
` js`
require('node-metrics').allGauges(metrics, server);
Ensure you append your Lynx instance to the req object as req.metrics. Then
append middleware like:
` js``
app.use(require('node-metrics').requestStatsMiddleware);
Note that for requestStatsByRouteMiddleware, stats will only be logged for a
route if req.route is present. Further, your route names will be cleaned of any
characters that might interfere with stasd's protocol.