よって、フィルタされエクスポートされたログ・メッセージを調査する。このセクションでは、主として最初の二つのステップについて説明します。¶ログ・メッセージを記録することは、次のログ記録メソッドのどれかを呼び出すだけの簡単なことです。コードの断片がどのように走ったかをトレースするメッセージを記録します。主として開発のために使用します。何らかの有用な情報を伝えるメッセージを記録します。何か予期しないことが発生したことを示す警告メッセージを記録します。出来るだけ早急に調査すべき致命的なエラーを記録します。ログ・メッセージのカテゴリを示します。下に記録するものです。ログ・メッセージは文字列でも、配列やオブジェクトのような複雑なデータでも構いません。呼ばれて文字列に変換されることになります。ログ・メッセージを上手に編成しフィルタするために、すべてのログ・メッセージにそれぞれ適切なカテゴリを指定することが推奨されます。カテゴリに基づいてメッセージをフィルタすることが容易になります。フレームワークのコアコードでも使われている方法です。いう文字列と同じになります。メソッドへのショートカットです。いう式でアクセス可能なシングルトンです。記録されたログ・メッセージを送信します。クラスまたはその子クラスのインスタンスです。ログ・ターゲットは、ログ・メッセージを重大性レベルとカテゴリによってフィルタして、何らかの媒体にエクスポートします。ログ・メッセージを指定されたメール・アドレスにエクスポートします。一つのアプリケーションの中で複数のログ・ターゲットを登録することが出来ます。よってログ・ターゲットを構成します。時にロードされなければなりません。リストアップされているのは、そのためです。プロパティに登録されています。最初のターゲットは、エラーと警告のメッセージを選択して、データベース・テーブルに保存します。両方にメールで送信します。下記のログ・ターゲットをあらかじめ内蔵しています。ドキュメントを参照してください。ログ・メッセージをデータベース・テーブルに保存する。ログ・メッセージを事前に指定されたメール・アドレスに送信する。ログ・メッセージをファイルに保存する。呼んでシステム・ログに保存する。以下では、全てのターゲットに共通する機能について説明します。ターゲットが処理すべきメッセージの重要性レベルとカテゴリを指定することが出来ます。プロパティは、次のレベルの一つまたは複数からなる配列を値として取ります。よって記録されたメッセージに対応。よって記録されたメッセージに対応。よって記録されたメッセージに対応。よって記録されたメッセージに対応。よって記録されたメッセージに対応。項で詳細に説明します。重大性レベルのメッセージを処理することを意味します。プロパティは、メッセージ・カテゴリの名前またはパターンからなる配列を値として取ります。ターゲットは、カテゴリの名前がこの配列にあるか、または配列にあるパターンに合致する場合にだけ、メッセージを処理します。持つカテゴリ名接頭辞です。カテゴリ名は、パターンと同じ接頭辞で始まる場合に、カテゴリ・パターンに合致します。クラスで記録されるログ・メッセージのためのカテゴリ名です。いうパターンに合致します。カテゴリのメッセージを処理することを意味します。プロパティによってブラック・リストとして登録することも可能です。カテゴリの名前がこの配列にあるか、または配列にあるパターンに合致する場合は、メッセージはターゲットによって処理されません。除外すべきことを指定するものです。いう書式のカテゴリ名でエラー・メッセージがログに記録されます。いうカテゴリのエラー・メッセージを発生させます。¶ログ・ターゲットはフィルタされたログ・メッセージを一定の書式でエクスポートします。ファイルに、下記と同様なログ・メッセージが書き込まれます。よって、下記のように書式設定されます。プロパティを構成することでカスタマイズすることが出来ます。コーラブルを値として取ります。プライバシー上の理由から削除されています)。}]メッセージ前置情報以外にも、ログ・ターゲットは、一群のログ・メッセージごとに一定のコンテキスト情報を追加します。この動作を調整することが出来ます。値だけをログ・メッセージに追加するように指定するものです。空の配列として構成して、コンテキスト情報をまったく含ませないようにすることも出来ます。メソッドをオーバーライドすることも出来ます。プロパティを追加で構成することが出来ます。自分自身で設定することも出来ます。開発段階では、各ログ・メッセージがどこから来ているかを知りたい場合がよくあります。プロパティを構成することによって達成できます。いうことを意味します。コール・スタック情報の取得は軽微な処理ではありません。従って、この機能は開発時またはアプリケーションをデバッグするときに限って使用するべきです。よって配列の中に保持されます。プロパティを構成することによってカスタマイズすることが出来ます。メッセージの吐き出しは、アプリケーションの終了時にも実行されます。これによって、ログ・ターゲットが完全なログ・メッセージを受け取ることが保証されます。ログ・メッセージを吐き出しても、ログ・メッセージはただちにはエクスポートされません。なく、ログ・ターゲットが一定数のフィルタされたメッセージを蓄積して初めて、メッセージのエクスポートが発生します。プロパティを構成することによってカスタマイズすることが出来ます。ログ・メッセージはログ・ターゲットに出現しません。このことは、長時間にわたって走るコンソール・アプリケーションでは、問題になる場合もあります。設定しなければなりません。頻繁なメッセージの吐き出しとエクスポートはアプリケーションのパフォーマンスを低下させます。プロパティを構成することによって、ログ・ターゲットを有効にしたり無効にしたりすることが出来ます。文を使っても出来ます。いう名前であることが必要とされています。配列で文字列のキーを使ってターゲットの名前を指定して下さい。ログ・ターゲットを有効にすべきか否かの動的な条件を定義するコーラブルを指定することが可能です。ドキュメントに一例がありますので参照して下さい。新しいログ・ターゲット・クラスを作ることは非常に簡単です。メソッドを実装することです。リリースに含まれているログ・ターゲット・クラスのどれか一つを参照してください。互換ロガーのどれかを使ってみるのも良いでしょう。特殊なタイプのメッセージ・ロギングです。クエリに要した時間を知るために、パフォーマンス・プロファイリングを使用しています。パフォーマンス・プロファイリングを使用するためには、最初に、プロファイリングが必要なコード・ブロックを特定します。各コード・ブロックを次のように囲みます。コード・ブロックを特定するユニークなトークンを表します。後でプロファイリング結果を検査するときに、このトークンを使って、対応するコード・ブロックによって消費された時間を調べます。ペアが適正な入れ子になっていることを確認することが非常に重要なことです。パフォーマンス・プロファイリングは機能しません。あるログ・メッセージが記録されます。プロファイリング結果を表示するパフォーマンス・プロファイリング・パネルを内蔵しています。