2016-11-30 23:41:57 +01:00
|
|
|
'use strict';
|
|
|
|
|
2017-06-28 10:20:22 +02:00
|
|
|
const { Router } = require('express');
|
2017-06-28 14:21:05 +02:00
|
|
|
const { register: prometheusRegister } = require('prom-client');
|
2016-11-30 23:41:57 +01:00
|
|
|
|
2017-06-28 10:20:22 +02:00
|
|
|
exports.router = config => {
|
|
|
|
const router = Router();
|
|
|
|
|
2016-12-04 14:09:37 +01:00
|
|
|
if (config.serverMetrics) {
|
2017-06-28 10:20:22 +02:00
|
|
|
router.get('/prometheus', (req, res) => {
|
2017-06-28 14:21:05 +02:00
|
|
|
res.set('Content-Type', prometheusRegister.contentType);
|
2016-11-30 23:41:57 +01:00
|
|
|
res.end(prometheusRegister.metrics());
|
|
|
|
});
|
|
|
|
}
|
2017-06-28 10:20:22 +02:00
|
|
|
|
|
|
|
return router;
|
2016-11-30 23:41:57 +01:00
|
|
|
};
|