使用node.js Bunyan与Intellij进行日志记录

使用node.js Bunyan与Intellij进行日志记录,node.js,intellij-idea,bunyan,Node.js,Intellij Idea,Bunyan,我正在为node.js子系统使用bunyan日志记录,通常使用intellij IDEA。我想使用,这样我就可以在intellij中获得buynan/json日志的好处 我找不到任何方法来做到这一点,但我觉得这一定是可能的。有人知道怎么做吗 更新: 下面的答案像冠军一样有效。当我没有立即找到一些东西时,我最终在一个日志类中创建了类似的东西,我用它来包装此功能并将其用于测试服务器: var bunyan = require('bunyan'); var bunyanFormat = require

我正在为node.js子系统使用bunyan日志记录,通常使用intellij IDEA。我想使用,这样我就可以在intellij中获得buynan/json日志的好处

我找不到任何方法来做到这一点,但我觉得这一定是可能的。有人知道怎么做吗

更新:

下面的答案像冠军一样有效。当我没有立即找到一些东西时,我最终在一个日志类中创建了类似的东西,我用它来包装此功能并将其用于测试服务器:

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);
    }
});

上述内容不应在生产代码中运行,但认为它可能对某些

您可以在JS项目中使用此库:

您可以这样配置它:

var bunyan = require('bunyan');
var PrettyStream = require('bunyan-prettystream');
var prettyStream = new PrettyStream();

prettyStream.pipe(process.stdout);

// Note this is an object with key 'stream' inside array.
// The object is the stream definition as far as Bunyan is concerned.
var streams = [{
   stream: prettyStream
}];

bunyan.createLogger({
   streams: streams,
   serializers: bunyan.stdSerializers
});

我在WebStorm中实现了这一点,用以下代码编写了一个shell脚本(我的名为node2bunyan):

#!/usr/bin/env bash

node $@ 2>&1 | bunyan --color
exit ${PIPESTATUS[0]}
并将其添加为运行配置的节点解释器:

然后你可以得到:


顺便说一句,我一直在为PyCharm获取同样的信息,在搜索时找到了你的问题,所以,

Nice!!不好意思我没想到这个。。。将我的问题编辑成我最后要做的事情,以防有人喜欢这个想法。我尝试这个想法不是很成功:(我仍然收到相同的错误不确定这是否适用于节点环境的.nvm安装。全局,当然,但是本地或特定项目如何?是的,这是一个禁止的
。nvm
安装。
bunyan prettystream
解决方案根据下面的@JBCP工作。