1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
unleash.unleash/packages/unleash-api/lib/routes/metrics.js

37 lines
1.0 KiB
JavaScript
Raw Normal View History

'use strict';
const logger = require('../logger');
const ClientMetrics = require('../client-metrics');
2016-10-27 16:55:38 +02:00
const ClientMetricsService = require('../client-metrics-service');
2016-10-27 16:55:38 +02:00
module.exports = function (app, config) {
const metricsDb = config.metricsDb;
const metrics = new ClientMetrics();
2016-10-27 16:55:38 +02:00
const service = new ClientMetricsService(metricsDb);
app.get('/metrics', (req, res) => {
2016-10-27 16:55:38 +02:00
res.json(service.getMetrics());
// Your stuff:
// res.json(metrics.getState());
});
app.post('/metrics', (req, res) => {
// TODO: validate input and reply with http errorcode
try {
2016-10-27 16:55:38 +02:00
// not required with header: Content-Type: application/json
// const data = JSON.parse(req.body);
// metrics.addPayload(data);
service.insert(req.body);
} catch (e) {
logger.error('Error recieving metrics', e);
}
res.end();
});
2016-10-27 16:55:38 +02:00
app.get('/metrics', (req, res) => {
res.json(metrics.getState());
});
};