3

奇妙なバグに遭遇しました。続行/デバッグする方法がわかりません。Nodejs で記述され、ログに Winston を使用するアプリがあります。昨日新しい本番サーバーを立ち上げ、古いサーバーを廃止するまで、すべてが正常に機能していました。

私の製品サーバーでは、4 つの Nodejs プロセスが実行されています。新しい運用サーバーでは、Winston は .js ファイルごとに最初のログ メッセージを記録します。その後、ログは停止し、ログ レベルの変更は機能しません。私のアプリには約 6 つの .js ファイルがあり、これらのファイルのいずれかにエラーが発生した場合、最初のエラー メッセージはログに記録されますが、後続のエラー/警告/情報はログに記録されません。

面白いことに、Winston は古い製品サーバーで問題なく動作していましたが、開発サーバーはまだ問題なく動作しています。

私は、開発と製品の両方で Winston 0.6.2 を使用しています。私の知る限り、すべての sw パッケージは dev と prod で同じです。

この問題をデバッグするにはどうすればよいですか?

4

3 に答える 3

4

いくつかの調査の後、私はこの問題に遭遇しました=> https://github.com/flatiron/winston/issues/227

ノードの最新バージョンでストリームを処理する新しい方法により、winston でファイル転送が壊れているようです。回避策として、当面はノード v0.8.22 に戻します。

于 2013-04-01T21:14:14.413 に答える
0

ロガー インスタンスを公開し、必要なログ レベルをトリガーする URL を取得できます。同じニーズがあったので、Winston の動的ログ レベル セッターを思いつきましたhttps://github.com/yannvr/Winston-dynamic-loglevel

于 2014-08-07T14:53:30.863 に答える
0

ロギングに使用しているトランスポートは何ですか? コンソール トランスポートは機能しますか? おそらく、新しい本番サーバーにはネットワークの問題があり、CouchDB や Loggly などのリモート サービスにログを記録できません。

winston ログ行の横に単純な console.log('...') 行を追加すると、それらは起動されますか。これにより、winston ログ行が実稼働サーバーで呼び出されていることが確認または拒否されます。

winston.info('winston log test')
console.log('console log test')
于 2013-03-30T15:15:07.070 に答える