我正在使用Bunyan with Restify来创建一个access.log,它将存储有关请求的信息,例如端点,状态代码等......但是,我想将错误与此文件分开并存储它们在一个单独的日志文件中。
我尝试通过向Bunyan记录器实例添加额外的流来创建第二个错误记录器,但是错误没有写入错误日志文件。任何想法为什么会这样?
var log = new Logger({
name: 'logga',
streams: [
{
stream: process.stdout,
level: 'debug'
},
{
path: './logs/access.log',
level: 'trace'
},
{
path: './logs/error.log',
level: 'error'
}
],
serializers: Logger.stdSerializers
});
server.on('uncaughtException', function (request, response, route, error) {
log.error(error);
});
答案 0 :(得分:0)
您可以删除serializers: Logger.stdSerializers
。那应该解决它。
答案 1 :(得分:0)
如果log.error(error);
处理程序中只有uncaughtException
调用,则很可能在您的进程因未捕获的异常而退出之前,错误流未被刷新。您可以尝试在其他地方记录错误以确认。