briareus
Version:
Briareus assists with Feature Branch deploys to ECS
29 lines (23 loc) • 645 B
JavaScript
const _ = require('lodash');
const uuidv4 = require('uuid/v4');
module.exports = function (service) {
return function (req, res, next) {
let context = {
logData: { reqId: uuidv4() }
};
// Create context aware logger
let levels = ['fatal', 'error', 'warn', 'info', 'debug', 'trace'];
context.log = _.zipObject(levels, _.map(levels, (level) => {
return (data, msg) => {
if (_.isString(data)) {
msg = data;
data = {};
}
service.log[level](_.defaults(data, _.clone(context.logData)), msg);
}
}));
req.context = context;
next();
}
};