【发布时间】:2014-12-26 07:57:22
【问题描述】:
我正在开发一个包含多个模块的节点应用程序。我现在正在尝试正确设置日志记录(应该在一开始就这样做),并考虑使用 Bunyan。
按照this answer 中的建议,最好有一个单独的logger 模块,然后按照this answer 的建议,或者直接在每个模块中定义一个新的bunyan logger 实例并相应地配置它?对于重用,我想是前者,但我不知道这是否会受到限制。
如果我有一个像这样定义的记录器
var bunyan = require('bunyan');
var logger = bunyan.createLogger({
name: "filter",
streams: [
{
level: 'info',
stream: process.stdout
},
{
level: 'error',
path: '../error.log'
},
{
level: 'debug',
path: '../debug.log'
}
]
});
module.exports = logger;
那么所有使用它的模块也将使用名称 filter 进行日志记录,而每个模块使用更能代表自身的名称进行日志记录可能更有意义。
另外,我是否认为所有模块都应该将错误记录到同一个日志文件中,例如systemErr.log(以便更好地概述)或者他们应该记录到自己的错误日志中,例如模块1Err.log,模块2Err.log?
【问题讨论】: