問題タブ [bunyan]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2213 参照

node.js - node-bunyan-syslog を使用して大きなメッセージをログに記録する

node-bunyan-syslogを使用して、ノード アプリケーションの Bunyan ロガーに syslog ストリーミングを提供しています。これは、ノード アプリケーションでの syslog ロギングに一般的に使用されるライブラリのようです。私の基本的なロガーの実装は次のとおりです。

時々、このログ ステートメント:

次のエラーがスローされます。

私のストリームは UDP を使用するように構成されているため、UDP(7) 仕様を調べました。これは、送信されているパケットのサイズが、送信されているネットワーク インターフェイスに設定されている MTU (Maximum Transmission Unit) を超えると、EMSGSIZE エラーがスローされることを示しています。使用済み。

最初に考えたのはdata、ログ ステートメントに渡される が大きすぎるということでした (実際、小さなメッセージのみをログに記録すると、エラーがスローされなくなります)。これは、サイズが数 KB になる場合があるためです。しかし、ログ メッセージのサイズは、インスタンス化した node-bunyan-syslog ストリームによって送信されるパケット サイズとは何の関係もありませんか?

node-bunyan-syslog のソース コードを調べて、独自のメッセージ分解をパケットに行うかどうかを判断しようとしましたが、そのようなロジックを見つけることができませんでした。

1 つの解決策は、提案されたログ メッセージのサイズを最初に確認し、特定のサイズ以下の場合にのみログに記録することですが、これは不必要に制限的であるように思われます。node-bunyan-syslog またはその基盤となるソケット ライブラリが、関連するエラーをユーザーに伝達することなく、MTU などの基本的なプロトコル制限を処理することを期待します。

私の原因の評価は正確ですか?このコンテキストでの EMSGSIZE エラーは、MTU の超過が原因ですか? Bunyan と node-bunyan-syslog を介して大きなメッセージを正常にログに記録するにはどうすればよいですか?

0 投票する
1 に答える
5245 参照

node.js - Bunyan を使用してログを特定のファイルに保存するにはどうすればよいですか?

NodeJS アプリの動作にバグがあり、使用中に発生していることをすべて適切にログに記録したいと考えています。

バニヤンに出会い、とてもよさそうです。ただし、他のすべての「ロガー」と同様に、単純に出力さstdoutれるため、何が起こっているのかを適切に分析するのが非常に困難です。

logs.jsonたとえば、Bunyan に常に何らかのファイルに出力させる方法はありますか?

0 投票する
1 に答える
165 参照

json - bunyan cli フォーマッタを使用してログバック ログを処理することはできますか?

Java アプリからのログバック ログが json 形式で生成されます。ノード サービスは bunyan 経由で json ログを生成しています。ログバック ログ ストリームで buynan cli を使用して、ノード buynan ログの cli のように、それらのログを人間が読めるようにすることは可能ですか? または、ログバック出力の再フォーマットに使用する同様の cli がありますか?

0 投票する
1 に答える
249 参照

node.js - nodejs bunyan要素の順序

私は bunyan を使用しています。これはログに書いている例です。

印刷されるフィールドの順序を変更する方法はありますか? これから:

{"name":"appName","hostname":"ip","pid":5817,"level":30," msg ":"message"," time ":"2015-10-15T19:04: 01.596Z","v":0}

これに:

{"時間":"2015-10-15T19:04:01.596Z"," msg ":"メッセージ","名前":"appName","ホスト名":"ip","pid":5817,"レベル":30,"v":0}

0 投票する
3 に答える
820 参照

node.js - Restify - モジュールからロガーにアクセスするためのベスト プラクティス

私はしばらくの間、これに対する答えを探していましたが、解決策を思いつきませんでした. req.log.xxxxx(...) から組み込みロガーにアクセスできることは理解していますが、コントローラーに必要なモジュールについてはどうでしょうか? 例えば:

私のコントローラーファイルで、someController.js

myModule.js で:

ログオブジェクトをモジュールのメソッドに渡すという考えは、私にはだらしないように思えるので、あまり好きではありません。それが唯一の解決策なら、私はそれで生きます。