briareus
Version:
Briareus assists with Feature Branch deploys to ECS
53 lines (41 loc) • 1.09 kB
JavaScript
const fs = require('fs');
const bunyan = require('bunyan');
const _ = require('lodash');
const config = require('./config');
var streams = [];
// Setup stderr logging
if (config.get('logging.stderr') === true) {
streams.push({ stream: process.stderr });
}
// Setup stdout logging
if (config.get('logging.stdout') === true) {
streams.push({ stream: process.stdout });
}
var log = bunyan.createLogger({
name: 'Briareus',
level: config.get('logging.level'),
serializers: bunyan.stdSerializers,
streams: streams
});
const reqSerializer = (req) => {
let maskHeader = '***';
let sensitiveHeaders = ['authorization'];
let headers = _.clone(req.headers);
if (!req || !req.connection) return req;
sensitiveHeaders.forEach((header) => {
if (!headers[header]) return;
headers[header] = maskHeader
})
return {
method: req.method,
url: req.url,
headers: headers,
remoteAddress: req.connection.remoteAddress,
remotePort: req.connection.remotePort
};
}
log.addSerializers({
req: reqSerializer
});
module.exports = log;