Winston: 同じロガー内でトランスポートごとにフォーマットを構成できるようにする

作成日 2018年07月08日  ·  5コメント  ·  ソース: winstonjs/winston

機能は何ですか?

コンソールトランスポートを備えたロガーと、クラウドベースのログサービスに移動する別のトランスポートがあります。 コンソールの場合、メッセージの前にタイムスタンプを付けて、色を付けたいと思います。 クラウドベースのログサービスの場合、サービスが独自のタイムスタンプを提供するため、タイムスタンプは必要ありません。また、色も必要ありません。

これは、私たちのサポートを受けて、実装する準備ができている機能ですか?

この機能のPRはすでに送信されています: #427および#422

トランスポートごとにフォーマットを構成することはすでに可能ですが、その機能がREADMEで説明されているのを見ていませんか?

最も参考になるコメント

気にしないでください、これは確かに可能ですが、ドキュメントでは機能についての言及が完全に省略されています。

const logger = winston.createLogger({
  transports: [
    new winston.transports.File({
      filename: 'error.log', level: 'error',
      format: winston.format.simple(),
    }),
    new winston.transports.File({
      filename: 'combined.log', level: 'debug',
      format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
    }),
  ],
});

logger.error('prefixed by the timestamp only in `combined.log`');

全てのコメント5件

気にしないでください、これは確かに可能ですが、ドキュメントでは機能についての言及が完全に省略されています。

const logger = winston.createLogger({
  transports: [
    new winston.transports.File({
      filename: 'error.log', level: 'error',
      format: winston.format.simple(),
    }),
    new winston.transports.File({
      filename: 'combined.log', level: 'debug',
      format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
    }),
  ],
});

logger.error('prefixed by the timestamp only in `combined.log`');

間違いなくドキュメントplzに追加します

@dandvコメントのprintfコードは

だからこの行...

format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),

...そのような閉じ中括弧が必要です

format: winston.format.printf(info => `${new Date().toISOString()}, ${info.message}`),

カスタムフォーマットのコードと知識をありがとう! とても有難い!

気にしないでください、これは確かに可能ですが、ドキュメントでは機能についての言及が完全に省略されています。

const logger = winston.createLogger({
  transports: [
    new winston.transports.File({
      filename: 'error.log', level: 'error',
      format: winston.format.simple(),
    }),
    new winston.transports.File({
      filename: 'combined.log', level: 'debug',
      format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
    }),
  ],
});

logger.error('prefixed by the timestamp only in `combined.log`');

@dandvトランスポートの外部および

気にしないでください、これは確かに可能ですが、ドキュメントでは機能についての言及が完全に省略されています。

const logger = winston.createLogger({
  transports: [
    new winston.transports.File({
      filename: 'error.log', level: 'error',
      format: winston.format.simple(),
    }),
    new winston.transports.File({
      filename: 'combined.log', level: 'debug',
      format: winston.format.printf(info => `${new Date().toISOString(), ${info.message}`),
    }),
  ],
});

logger.error('prefixed by the timestamp only in `combined.log`');

@dandvトランスポートの外部および

中のもの。

このページは役に立ちましたか?
0 / 5 - 0 評価