-
Notifications
You must be signed in to change notification settings - Fork 6
/
index.js
21 lines (16 loc) · 611 Bytes
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
const packageJSON = require('./package.json');
const lifecycle = require('./lib/lifecycle');
const metric = require('./lib/metric');
exports.register = (server, options, next) => {
const responseMetric = metric.create(options);
server.ext('onRequest', lifecycle.setStartTime);
server.ext('onPreResponse', lifecycle.setEndTime);
server.on('response', request => {
const dimensions = metric.createDimensions(request);
responseMetric.put(request.app.endTime - request.app.startTime, 'responseTime', dimensions);
});
return next();
};
exports.register.attributes = {
pkg: packageJSON,
};