Node.js: Winston: すべてのログメッセージにデフォルトのメタデータを追加できますか? 質問する

Node.js: Winston: すべてのログメッセージにデフォルトのメタデータを追加できますか? 質問する

私は使用していますウィンストンNode.js でログ記録を行います。各ログ メッセージにメタデータを個別に追加できることはわかっていますが、ログ メッセージを送信する必要があるたびにメタデータを指定したくないので、すべてのログ メッセージに追加されるデフォルトのメタデータ セット (アプリ名など) を指定する方法はありますか。

ベストアンサー1

Winston v2の場合(コメントを参照)

現在、rewriters

たとえば、以下は、appこのロガーを通過するすべてのメタデータにプロパティを追加します。

    logger.rewriters.push(function(level, msg, meta) {
      meta.app = 'myApp';
      return meta;
    });

ロガーを構築するときに宣言することもできます。

    new (winston.Logger)({
            level: config.log[file].level,
            rewriters: [
                (level, msg, meta) => {
                    meta.app = 'myApp';
                    return meta;
                }
            ],
            transports: [
                /*your transports*/
            ]
    });

おすすめ記事