我使用Bunyan和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);
});发布于 2014-12-09 07:30:16
您可以删除serializers: Logger.stdSerializers。这应该能解决问题。
发布于 2015-07-17 11:31:47
如果唯一的log.error(error);调用在您的uncaughtException处理程序中,那么很可能在进程退出之前,错误流没有被刷新,这是由于未提及的异常。您可以尝试在其他地方记录错误以确认这一点。
https://stackoverflow.com/questions/25117908
复制相似问题