
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
express-statsd
Advanced tools

StatsD route monitoring middleware for Connect/Express. This middleware can be used either globally or on a per-route basis (preferred) and sends status codes and response times to StatsD.
npm install express-statsd
An example of an express server with express-statsd:
var express = require('express');
var expressStatsd = require('express-statsd');
var app = express();
app.use(expressStatsd());
app.get('/', function (req, res) {
res.send('Hello World!');
});
app.listen(3000);
By default, the middleware will send status_code and response_time stats
for all requests. For example, using the created server above and a request to
http://localhost:3000/, the following stats will be sent:
status_code.200:1|c
response_time:100|ms
However, it's highly recommended that you set req.statsdKey which
will be used to namespace the stats. Be aware that stats will only be logged
once a response has been sent; this means that req.statsdKey can be
set even after the express-statsd middleware was added to the chain. Here's an
example of a server set up with a more specific key:
var express = require('express');
var expressStatsd = require('express-statsd');
var app = express();
function statsd (path) {
return function (req, res, next) {
var method = req.method || 'unknown_method';
req.statsdKey = ['http', method.toLowerCase(), path].join('.');
next();
};
}
app.use(expressStatsd());
app.get('/', statsd('home'), function (req, res) {
res.send('Hello World!');
});
app.listen(3000);
A GET request to / on this server would produce the following stats:
http.get.home.status_code.200:1|c
http.get.home.response_time:100|ms
This module also works with any http server
var http = require('http');
var expressStatsd = require('express-statsd');
var monitorRequest = expressStatsd();
http.createServer(function (req, res) {
monitorRequest(req, res);
// do whatever you want, framework, library, router
res.end('hello world');
}).listen(3000);
expressStatsd(options);
Object - Container for settings
Object - The statsd client. Defaults to lynx
with host set to 127.0.0.1 and port set to 8125.String - The key on the req object at which to grab
the key for the statsd logs. Defaults to req.statsdKey.FAQs
Statsd route monitoring middleware for connect/express
The npm package express-statsd receives a total of 1,079 weekly downloads. As such, express-statsd popularity was classified as popular.
We found that express-statsd demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.