Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – 在Winston中是否有等效的log.IsDebugEnabled?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
Winston中是否有等效的log.IsDebugEnabled?

我想使用它来跳过生产环境中昂贵的日志代码,但让它在开发中执行.

例如:

if(winston.isDebugEnabled){
   // Call to expensive dump routIne here
   dump();
}

检查winston.debug只检查方法是否已定义,而不是是否已启用.

非常感谢!

编辑:添加代码示例.

解决方法

我已经在记录器中添加一个方法来实现:

logger.isLevelEnabled = function(level) {
  return _.any(this.transports,function(transport) {
    return (transport.level && this.levels[transport.level] <= this.levels[level])
      || (!transport.level && this.levels[this.level] <= this.levels[level]);
  },this);
};

这将遍历每个记录器的传输,并检查它是否“想要”记录指定的级别.
注意_.anylodash,你可以用for循环替换.

大佬总结

以上是大佬教程为你收集整理的node.js – 在Winston中是否有等效的log.IsDebugEnabled?全部内容,希望文章能够帮你解决node.js – 在Winston中是否有等效的log.IsDebugEnabled?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。