Manual:Structured logging/ja

ログ記録の構造化とは運用上の（バグ修正用）ログ記録で、ポストプロセスに役立つ構造化データで構成されています. （Special:Logへのログ記録）と混同しないでください.

MediaWiki 1.25以降、MediaWikiコアと拡張機能ではPSR-3ログ標準を採用し、バグ修正コールの 及び は廃止されました. PSR-3 標準ではログ メッセージ単位で一連のコンテキスト データを添付でき、構造化されたキー値のペアが提供されます.

からロガーを取得
Where  should be the name of an extension (or prefixed with the name) or one of the core logging channels.

緊急度情報の利用

 * ローカルの開発には便利でも、製品版ウィキに出力するには一般的に「スパムに近似」するメッセージです. 一般的に現状でwfDebugを利用してログ記録したものを網羅します.
 * ローカルの開発には便利でも、製品版ウィキに出力するには一般的に「スパムに近似」するメッセージです. 一般的に現状でwfDebugを利用してログ記録したものを網羅します.


 * 貴重な状態変化情報. このレベルは、最終的にエラーが発生した要求のパスをトレースするときに本番環境で役立つ情報を記録するのに最適な場所です.   コールをPSR-3標準でマッピングすると、現状では自動でこのレベルを付与します.
 * 貴重な状態変化情報. このレベルは、最終的にエラーが発生した要求のパスをトレースするときに本番環境で役立つ情報を記録するのに最適な場所です.   コールをPSR-3標準でマッピングすると、現状では自動でこのレベルを付与します.


 * 通常は表示されないはずの回復可能なエラーまたは別の状態などのソフトエラー状態. 処理中の操作では停止しません.
 * 通常は表示されないはずの回復可能なエラーまたは別の状態などのソフトエラー状態. 処理中の操作では停止しません.


 * 回復パスのないキャッチされた例外などのハードエラー.
 * 回復パスのないキャッチされた例外などのハードエラー.

PSR-3標準に含まれる緊急度は他にもありますが、MediaWikiでの使用は非推奨です.

ログ記録コンテキストに構造化データを付加する
ログ方式に関わらず、どれも以下のようなオプションでコンテキスト オブジェクトがあります:

他の利用者が関連メッセージの検索やエラーの原因遡求に使用できるように、ログ メッセージのコンテキスト オブジェクトには有用な構造化データを付加する必要があります. 特に と のメッセージについて、ウィキの運用者がコードパスをよく知らなくても良質なバグ報告を書くには、これが重要で有効です.


 * コンテキスト引数で例外オブジェクトを渡すには、 必ず 「exception」キーに書きます (例: )
 * パラメータまたはその他の興味深い状態をメッセージに添付します. オブジェクトまたはその他のタイプを使用できます.  それらは合理的な方法で文字列に変換されます（たとえば、存在する場合は$ codeマジックメソッドを使用します）.
 * 標準の引数 (ウィキ名、サーバ名など) の追加は自動処理されます. ご利用のログ記録サービスによって詳細は異なっても、結局はを使うことがありえます.
 * タブで区切られたアイテム、label = value / label：valueのペア、jsonシリアル化などの偽造構造を置き換えます.
 * 例外オブジェクトを作成し、ログコンテキストに追加して破棄することにより、スタックトレースを記録します.

多くのログアグリゲーターはメッセージごとにログの重複を排除しようとするため、変更可能な詳細をメッセージから除外し、それらをコンテキストに移動しようとします. ロガーは、中括弧内のトークンをコンテキストの対応する値に置き換えます. たとえば、コード

その出力結果の例.

さまざまなログ記録バックエンドとの互換性を最大にするため、コンテキスト データに下記のキーは使用しないでください:



ウィキをログの構造化用に設定する
下位互換性のために、デフォルトのMediaWiki構成を使用しており、 basic loggingを構成している場合、コンテキストオブジェクトをこれらのロガーメソッドに提供するか、$ codeなどのMediaWikiのグローバル関数に提供するか、コンテキスト内の情報 オブジェクトは、設定したログファイルに「表示されません」. monologなど、もっと質のよいログ記録器を「サービスプロバイダ・インターフェース」として採用しなければなりません. および を参照してください.

関連項目

 * Requests for comment/Structured logging
 * PSR-3 ログ記録基準
 * logstash - ウィキメディアがMediaWiki logsの大部分をlogstashにフィードすると、構造化したログ記録が解読されます.
 * logstash - ウィキメディアがMediaWiki logsの大部分をlogstashにフィードすると、構造化したログ記録が解読されます.