我正在为 node.js 子系统使用 bunyan 日志记录,通常使用 intellij IDEA。我想使用bunyan 的漂亮打印机,这样我就可以在 intellij 中获得 buynan/json 日志的好处。
我找不到任何方法来做到这一点,但觉得这一定是可能的。有没有人想出如何做到这一点?
更新:
@cyue下面的回答就像一个冠军。当我没有马上找到东西时,我最终在一个日志类中创建了类似的东西,我用它来包装这个功能并将它用于测试服务器:
var bunyan = require('bunyan');
var bunyanFormat = require('bunyan-format');
var standardOut = bunyanFormat({outputMode: 'long', levelInString: true});
var errorOut = bunyanFormat({outputMode: 'bunyan', levelInString: true});
var bunyanLogger = bunyan.createLogger({
name: 'tot',
streams: [
{
stream: process.stdout ,
level: 'trace'
},
{
stream: process.stderr ,
level: 'warn'
}
],
serializers: {
req: bunyan.stdSerializers.req,
res: bunyan.stdSerializers.res,
err: bunyan.stdSerializers.err,
error: bunyan.stdSerializers.err
}
});
eventLogger.on('log', function (log) {
if (resolveLevel(log.level) >= minimumLogLevel) {
bunyanLogger[log.level].apply(bunyanLogger, log.arguments);
}
});
以上不应该在生产代码中运行,但认为它可能对某些人有用......