【发布时间】:2022-04-08 12:57:12
【问题描述】:
我正在使用 winston 保存日志,并将日志保存到文件中。
var winston = require('winston');
var moment = require('moment');
var logger = new (winston.Logger)({
transports: [
new (winston.transports.File)({
name: 'info-file',
filename: 'console.log',
timestamp : function() {return moment().utcOffset(330).format('DD-MM HH:mm'); },
level: 'info'
}),
new (winston.transports.File)({
name: 'debug-file',
filename: 'console.log',
timestamp : function() {return moment().utcOffset(330).format('DD-MM HH:mm'); },
level: 'debug'
}),
new (winston.transports.File)({
name: 'error-file',
filename: 'console.log',
timestamp : function() {return moment().utcOffset(330).format('DD-MM HH:mm'); },
level: 'error'
}),
new (winston.transports.File)({
name: 'unhandled-error-file',
filename: 'console.log',
timestamp : function() {return moment().utcOffset(330).format('DD-MM HH:mm'); },
handleExceptions: true
})
]
});
这是我正在运行的命令:
router.get('/exercise_excel_entry', function(req,res){
logger.log('info', "info testing");
logger.log('debug', "debug testing");
logger.log('error', "error testing");
res.render('exercise_excel_entry');
});
这是保存在文件中的输出:
{"level":"info","message":"info testing","timestamp":"04-02 11:51"}
{"level":"error","message":"error testing","timestamp":"04-02 11:51"}
{"level":"info","message":"info testing","timestamp":"04-02 11:51"}
{"level":"info","message":"info testing","timestamp":"04-02 11:51"}
{"level":"error","message":"error testing","timestamp":"04-02 11:51"}
{"level":"debug","message":"debug testing","timestamp":"04-02 11:51"}
{"level":"error","message":"error testing","timestamp":"04-02 11:51"}
{"level":"error","message":"error testing","timestamp":"04-02 11:51"}
我不明白为什么信息和错误标记的日志会重复
【问题讨论】: