2

Bunyan と Restify を使用して、エンドポイント、ステータス コードなどのリクエストに関する情報を保存する access.log を作成しています。ログファイル。

Bunyan ロガー インスタンスにストリームを追加して 2 番目のエラー ロガーを作成しようとしましたが、エラーがエラー ログ ファイルに書き込まれません。それはなぜですか?

var log = new Logger({
  name: 'logga',
  streams: [
    {
      stream: process.stdout,
      level: 'debug'
    },
    {
      path: './logs/access.log',
      level: 'trace'
    },
    {
      path: './logs/error.log',
      level: 'error'
    }
  ],
  serializers: Logger.stdSerializers
});

server.on('uncaughtException', function (request, response, route, error) {
  log.error(error);
});
4

2 に答える 2

0

削除できserializers: Logger.stdSerializersます。それはそれを修正する必要があります。

于 2014-12-09T07:30:16.393 に答える
0

唯一のlog.error(error);呼び出しがuncaughtExceptionハンドラー内にある場合、キャッチされていない例外が原因で、プロセスが終了する前にエラー ストリームがフラッシュされていない可能性があります。それを確認するために、エラーを別の場所に記録してみることができます。

于 2015-07-17T11:31:47.827 に答える