我正在尝试将 Morgan 与 Express.js 结合使用来编写日志文件,同时也在控制台上显示我的日志。
我正在使用这段代码:
var logger = require('morgan');
var accessLogStream = fs.createWriteStream('./access.log', {flags: 'a'});
app.use(logger("dev",{stream: accessLogStream}));
但通过这种方式,我只能获取控制台日志,而我的 access.log 文件仍为空。
如果我这样做(不指定“dev”):
var logger = require('morgan');
var accessLogStream = fs.createWriteStream('./access.log', {flags: 'a'});
app.use(logger({stream: accessLogStream}));
我的文件上有日志,但控制台上没有。
如何获取控制台和文件上的日志?
先感谢您!
编辑:
此时我找到了这个解决方案:
app.use(logger({format:"[:date[clf]] :method :url :status :response-time ms",stream: {
write: function(str)
{
accessLogStream.write(str);
console.log(str);
}
}}));
但如果您有更好的……不客气!
From github https://github.com/expressjs/morgan/issues/51
var logger = require('morgan');
app.use(logger('common', {
stream: fs.createWriteStream('./access.log', {flags: 'a'})
}));
app.use(logger('dev'));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)