複数のモジュールを含むノード アプリケーションに取り組んでいます。現在、ロギングを適切にセットアップしようとしており (最初にセットアップする必要がありました)、Bunyan の使用を検討しています。
この回答logger
で提案されているように、エクスポートされて他のモジュールで必要とされる単一のモジュールを用意するか、各モジュールで新しい bunyanインスタンスを直接定義して、それに応じて構成する方がよいでしょうか? 再利用については前者を想像しますが、これが今後制限されるかどうかはわかりません。logger
次のように定義された単一のロガーがある場合
var bunyan = require('bunyan');
var logger = bunyan.createLogger({
name: "filter",
streams: [
{
level: 'info',
stream: process.stdout
},
{
level: 'error',
path: '../error.log'
},
{
level: 'debug',
path: '../debug.log'
}
]
});
module.exports = logger;
次に、それを使用するすべてのモジュールも名前filter
でログを記録しますが、各モジュールがそれ自体をより適切に表す名前にログを記録する方が理にかなっている場合があります。
また、すべてのモジュールが systemErr.log などの同じログ ファイルにエラーを記録する必要があると考えるのは正しいですか?