Skip to content

change/node-metrics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-metrics

Easily forward a node app's basic health metrics to a local statsd instance.

Development

Install dependencies:

  npm install

Run tests:

  npm test

Usage

  1. Install
npm install node-metrics
  1. Configure

Create a Lynx instance:

var Lynx = require('lynx'),
    dgram = require('dgram');

var metrics = new Lynx('localhost', 8125, {
  socket: dgram.createSocket('udp4'),
  scope: 'YOUR_NAMESPACE'
});

Collecting data!

node-metrics provides middleware and library functions for collecting basic health metrics.

Use an individual gauge

  require('node-metrics').nodeMemoryGauge(metrics);

Or for node connections:

  require('node-metrics').nodeConnectionsGauge(metrics, server);

Where server is an http server instance (as supplied by app.listen() ).

Use all gauges

To configure all gauges at once, do:

  require('node-metrics').allGauges(metrics, server);

Use middleware

Ensure you append your Lynx instance to the req object as req.metrics. Then append middleware like:

  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.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published