【问题标题】:Node.js log4j-like logging systemNode.js log4j-like 日志系统
【发布时间】:2011-11-29 11:46:38
【问题描述】:

你能给我推荐一个适合 node.js 的类似 log4j 的日志系统吗?

【问题讨论】:

    标签: node.js logging log4j


    【解决方案1】:

    它不是 log4j 端口,但 Winston 提供了一些类似的功能。 https://github.com/indexzero/winston

    【讨论】:

      【解决方案2】:

      我认为 Winston 确实不错,但是既然您提到了 log4j,您可能对节点端口感兴趣:node-log4js

      【讨论】:

        【解决方案3】:

        轻量级解决方案

        我查看了许多记录器,但我无法找到一个轻量级的解决方案 - 所以我决定在 github 上发布一个简单的解决方案。

        • 保存文件
        • 给你一个漂亮的输出(我们都喜欢)
        • 易于使用

        希望对你有所帮助。

        设置

        https://github.com/bluejamesbond/Scribe.js
        

        PS:如果有任何问题,如果你能修复它然后提出拉取请求,我将不胜感激。否则,我们非常欢迎您作为问题发布。

        【讨论】:

          【解决方案4】:

          你也可以试试看https://www.npmjs.org/package/bunyan

          它的输出是 JSON 格式,可以有不同的输出流,如 stoud、日志文件以及在旋转/回收之前要维护的文件数量的选项,类似于 Log4j。

          根据 npm 上的文档,Joyent 也在生产中使用它。

          【讨论】:

            【解决方案5】:

            我在 log4js-node(或简称 log4js)方面取得了一些成功。我什至可以使用 watchr 来跟踪(监视)log4js 配置文件,并设置日志级别,而无需在我的 Angular 中间件中重新启动我的 .js 代码。一个在文档中不明显的棘手建议是,您可以如何处理关闭/重新启动的回调,以便在观察者侦听器的“更新”开关中进行热配置更改。

            console.log('shutting down log4js');
            log4js.shutdown((err) => {
                 if (err!=undefined) {
                      console.log('shutting down log4js msg: ' + err);
                 }
            });
            console.log('rebooting log4js');
            log4js.configure('./myconfigfile.json');
            logger = log4js.getLogger();
            

            【讨论】:

              【解决方案6】:

              【讨论】:

              • FWIW,原来是 log4j 而 log4js 是一个端口。此外,它已被修复。
              猜你喜欢
              • 2016-10-16
              • 1970-01-01
              • 2017-11-06
              • 2014-04-30
              • 2013-01-03
              • 1970-01-01
              • 2011-07-25
              • 2011-06-18
              • 1970-01-01
              相关资源
              最近更新 更多