40 lines
786 B
JavaScript
40 lines
786 B
JavaScript
const { createLogger, format, transports } = require('winston')
|
|
const { combine, timestamp, simple } = format
|
|
|
|
const options = {
|
|
file: {
|
|
level: 'info',
|
|
filename: '../logs/app.log',
|
|
handleExceptions: true,
|
|
json: true,
|
|
maxsize: 5242880, // 5MB
|
|
maxFiles: 5,
|
|
colorize: false,
|
|
timestamp: true
|
|
},
|
|
console: {
|
|
level: 'debug',
|
|
handleExceptions: true,
|
|
json: false,
|
|
colorize: true,
|
|
timestamp: true
|
|
}
|
|
}
|
|
|
|
const logger = createLogger({
|
|
level: 'info',
|
|
format: combine(
|
|
timestamp({
|
|
format: 'YYYY-MM-DD HH:mm:ss'
|
|
}),
|
|
simple()
|
|
),
|
|
transports: [
|
|
new transports.File(options.file),
|
|
new transports.Console(options.console)
|
|
],
|
|
exitOnError: false // do not exit on handled exceptions
|
|
})
|
|
|
|
module.exports = logger
|