このドキュメントはAIによって翻訳されました。正確な情報については英語版をご参照ください。
pino に基づくログのラッパーで、高性能な構造化 JSON ログを提供します。ログの収集と分析を容易にするため、console の代わりに ctx.logger を使用することをお勧めします。
すべての RunJS シナリオで ctx.logger を使用でき、デバッグ、エラー追跡、パフォーマンス分析などに役立ちます。
ctx.logger は engine.logger.child({ module: 'flow-engine' }) であり、module コンテキストを持つ pino の子ロガーです。
pino は以下のレベルをサポートしています(高い順):
| レベル | メソッド | 説明 |
|---|---|---|
fatal | ctx.logger.fatal() | 致命的なエラー。通常、プロセスの終了を伴います。 |
error | ctx.logger.error() | エラー。リクエストや操作の失敗を示します。 |
warn | ctx.logger.warn() | 警告。潜在的なリスクや異常な状況を示します。 |
info | ctx.logger.info() | 一般的な実行時の情報。 |
debug | ctx.logger.debug() | デバッグ情報。開発時に使用します。 |
trace | ctx.logger.trace() | 詳細なトレース。深い診断に使用します。 |
level(msg, meta) 形式を推奨します。メッセージを先に、オプションのメタデータオブジェクトを後に記述します。
pino は level(meta, msg)(オブジェクトが先)や level({ msg, ...meta })(単一オブジェクト)もサポートしており、必要に応じて使用できます。
構造化 JSON ログを取得するために、ctx.logger を直接使用することをお勧めします。console を使い慣れている場合は、以下のように対応させてください:console.log → ctx.logger.info、console.error → ctx.logger.error、console.warn → ctx.logger.warn。
pino は構造化 JSON を出力します。各ログには以下が含まれます:
level:ログレベル(数値)time:タイムスタンプ(ミリ秒)msg:ログメッセージmodule:flow-engine で固定child() で作成された子ロガーでも、level(msg, meta) の書き方を推奨します。