33 lines
978 B
TypeScript
33 lines
978 B
TypeScript
import winston from 'winston';
|
|
|
|
const logFormatter = winston.format.printf(({ level, message, timestamp }) => {
|
|
return `${new Date(timestamp).toLocaleDateString('en-GB', {timeZone: 'UTC'})} ${new Date(timestamp).toLocaleTimeString('en-GB', {timeZone: 'UTC'})} ${level.replace('info', 'I').replace('warn', '!').replace('error', '!!')}: ${message}`;
|
|
});
|
|
|
|
winston.addColors({
|
|
error: 'red',
|
|
debug: 'blue',
|
|
warn: 'yellow',
|
|
http: 'gray',
|
|
info: 'blue',
|
|
verbose: 'cyan',
|
|
silly: 'magenta'
|
|
});
|
|
|
|
export const logger = winston.createLogger({
|
|
level: 'debug',
|
|
format: winston.format.combine(
|
|
winston.format.simple()
|
|
),
|
|
transports: [
|
|
new winston.transports.File({filename: 'deemix-web-fe-error.log', level: 'warn'}),
|
|
new winston.transports.File({filename: 'deemix-web-fe.log'}),
|
|
new winston.transports.Console({
|
|
format: winston.format.combine(
|
|
winston.format.timestamp(),
|
|
winston.format.colorize(),
|
|
logFormatter
|
|
)
|
|
})
|
|
]
|
|
}); |