1
0
mirror of https://github.com/xuthus83/pigallery2.git synced 2024-11-03 21:04:03 +08:00
pigallery2/backend/Logger.ts
2018-03-30 15:30:30 -04:00

34 lines
1002 B
TypeScript

import * as winston from 'winston';
declare module 'winston' {
interface LoggerInstance {
logFileName: string;
logFilePath: string;
}
}
export const winstonSettings = {
transports: [
new winston.transports.Console({
level: process.env.NODE_ENV == 'production' ? 'info' : 'silly',
handleExceptions: true,
json: false,
colorize: true,
timestamp: function () {
return (new Date()).toLocaleString();
},
label: 'innerLabel',
formatter: (options) => {
// Return string will be passed to logger.
return options.timestamp() + '[' + winston['config']['colorize'](options.level, options.level.toUpperCase()) + '] ' +
(undefined !== options.message ? options.message : '') +
(options.meta && Object.keys(options.meta).length ? '\n\t' + JSON.stringify(options.meta) : '');
},
debugStdout: true
})
],
exitOnError: false
};
export const Logger = new winston.Logger(winstonSettings);