Browse Source

refactor: add console logging for exceptions

develop
Apostolos Fanakis 4 years ago
parent
commit
790dc3b31e
  1. 54
      packages/concordia-shared/src/logging/node/winstonLogUtils.js

54
packages/concordia-shared/src/logging/node/winstonLogUtils.js

@ -1,29 +1,30 @@
const path = require('path');
const getLogger = (winston, logsDirectory, serviceName) => {
const logger = winston.createLogger({
level: process.env.NODE_ENV === 'production' ? 'info' : 'silly',
format: winston.format.combine(
winston.format.timestamp(),
winston.format.json(),
),
defaultMeta: { service: serviceName },
transports: [
new winston.transports.File({
filename: path.join(logsDirectory, 'error.log'),
level: 'error',
}),
new winston.transports.File({
filename: path.join(logsDirectory, 'combined.log'),
}),
],
exceptionHandlers: [
new winston.transports.File({ filename: path.join(logsDirectory, 'exceptions.log') }),
],
});
const transports = [
new winston.transports.File({
filename: path.join(logsDirectory, 'error.log'),
level: 'error',
}),
new winston.transports.File({
filename: path.join(logsDirectory, 'combined.log'),
}),
];
const exceptionHandlers = [
new winston.transports.File({ filename: path.join(logsDirectory, 'exceptions.log') }),
];
if (process.env.NODE_ENV !== 'production') {
logger.add(new winston.transports.Console({
transports.push(new winston.transports.Console({
format: winston.format.combine(
winston.format.colorize(),
winston.format.timestamp(),
winston.format.simple(),
),
}));
exceptionHandlers.push(new winston.transports.Console({
format: winston.format.combine(
winston.format.colorize(),
winston.format.timestamp(),
@ -32,7 +33,16 @@ const getLogger = (winston, logsDirectory, serviceName) => {
}));
}
return logger;
return winston.createLogger({
level: process.env.NODE_ENV === 'production' ? 'info' : 'silly',
format: winston.format.combine(
winston.format.timestamp(),
winston.format.json(),
),
defaultMeta: { service: serviceName },
transports,
exceptionHandlers,
});
};
module.exports = getLogger;

Loading…
Cancel
Save