在Intellij中使用node.js Bunyan日志记录

dar*_*rin 2 intellij-idea node.js bunyan

我正在为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);
    }
});
Run Code Online (Sandbox Code Playgroud)

上面的代码不应该在生产代码中运行,但是认为它可能对某些人有用。

小智 5

I managed for it in WebStorm, write a shell script (mine named node2bunyan) with this:

#!/usr/bin/env bash

node $@ 2>&1 | bunyan --color
exit ${PIPESTATUS[0]}
Run Code Online (Sandbox Code Playgroud)

And add it as a Node interpreter for the Run Configuration: 在此处输入图片说明

Then you can get: 在此处输入图片说明

PS. I'm stuck to get the same for PyCharm and reached your question when searching SO, my question for PyCharm