winston不在任何日志级别进行日志logging。 什么可能是错的?

我跑到一个奇怪的错误,不知道如何进行/debugging。 我有一个应用程序写在nodejs和使用Winston的日志logging。 一切正常,直到我昨天提出了一个新的生产服务器,并退休旧的。 我的prod服务器有4个nodejs进程正在运行。 在新的生产服务器上,winston会根据.js文件logging第一个日志消息。 期。 它在那之后停止logging。 更改日志级别不起作用。 我的应用程序已经得到了大约6个.js文件,并且在这些文件中包含任何错误,第一个错误信息被logging下来,但是没有logging任何后续的错误/警告/信息。

有趣的是Winston在旧的prod服务器上工作得很好,而dev服务器仍然正常工作。

我在开发和产品winston 0.6.2上。 据我所知,所有的sw软件包在dev和prod之间是一样的。

我不知道如何debugging这个问题。 任何帮助深表感谢。

–su

经过一番调查,我遇到了这个问题=> https://github.com/flatiron/winston/issues/227

看起来,在最新版本的节点中处理数据stream的新方法在winston中破坏了文件传输。 我现在回到节点v0.8.22作为解决方法。

你用什么传输logging? 控制台运输工作? 也许新的生产服务器有一个networking问题,阻止它login到远程服务,如CouchDB或Loggly。

如果在winston日志行旁边添加一个简单的console.log('…')行,那么这些行会被解雇。 这将确认或否认winston日志行在生产服务器上被调用

winston.info('winston log test') console.log('console log test') 

您可以公开logging器实例并使用URL来触发所需的日志级别。 我有同样的需要,所以我想出了一个dynamic的日志级别设置温斯顿https://github.com/yannvr/Winston-dynamic-loglevel