第5章 開発者向けのロギング
5.1. はじめに
5.1.1. ロギングについて
ロギングとはアプリケーションから活動に関する記録 (ログ) を受け取り、メッセージ群を記録することです。
ログメッセージは、アプリケーションをデバッグする開発者や実稼働環境のアプリケーションを維持するシステム管理者に対して重要な情報を提供します。
最新の Java のロギングフレームワークの多くには、正確な時間やメッセージの起源など他の詳細も含まれています。
5.1.2. JBoss LogManager でサポートされるアプリケーションロギングフレームワーク
JBoss LogManager は次のロギングフレームワークをサポートします。
- JBoss Logging - JBoss Enterprise Application Platform 6 に含まれています。
- Apache Commons Logging - http://commons.apache.org/logging/
- Simple Logging Facade for Java (SLF4J) - http://www.slf4j.org/
- Apache log4j - http://logging.apache.org/log4j/1.2/
- Java SE Logging (java.util.logging) - http://download.oracle.com/javase/6/docs/api/java/util/logging/package-summary.html
5.1.3. ログレベルについて
ログレベルとは、ログメッセージの性質と重大度を示す列挙値の順序付けされたセットです。 特定のログメッセージのレベルは、そのメッセージを送信するために選択したロギングフレームワークの適切なメソッドを使用して開発者が指定します。
JBoss Enterprise Application Platform 6 はサポートされるアプリケーションロギングフレームワークによって使用されるすべてのログレベルをサポートします。最も一般的に使用される 6 つのログレベルは、ログレベルの低い順に
TRACE
、DEBUG
、INFO
、WARN
、ERROR
および FATAL
となります。
ログレベルはログカテゴリとログハンドラーによって使用され、それらが担当するメッセージを限定します。各ログレベルには、他のログレベルに対して相対的な順番を示す数値が割り当てられています。ログカテゴリーとハンドラーにはログレベルが割り当てられ、そのレベル以上のログメッセージのみを処理します。たとえば、
WARN
レベルのログハンドラーは、WARN
、ERROR
、および FATAL
のレベルのメッセージのみを記録します。
5.1.4. サポートされているログレベル
ログレベル | 値 | 説明 |
---|---|---|
FINEST | 300 |
-
|
FINER | 400 |
-
|
TRACE | 400 |
アプリケーションの実行状態に関する詳細情報を提供するメッセージに使用します。通常、
TRACE のログメッセージはアプリケーションのデバッグ時のみにキャプチャーされます。
|
DEBUG | 500 |
アプリケーションの個別の要求またはアクティビティの進捗状況を表示するメッセージに使用します。
DEBUG のログメッセージは通常アプリケーションのデバッグ時のみにキャプチャーされます。
|
FINE | 500 |
-
|
CONFIG | 700 |
-
|
INFO | 800 |
アプリケーションの全体的な進捗状況を示すメッセージに使用します。多くの場合、アプリケーションの起動、シャットダウン、およびその他の主要なライフサイクルイベントに使用されます。
|
WARN | 900 |
エラーではないが、理想的とは見なされない状況を示すために使用されます。将来的にエラーをもたらす可能性のある状況を示します。
|
WARNING | 900 |
-
|
ERROR | 1000 |
発生したエラーの中で、現在のアクティビティや要求の完了を妨げる可能性があるが、アプリケーション実行の妨げにはならないエラーを表示するために使用されます。
|
SEVERE | 1000 |
-
|
FATAL | 1100 |
クリティカルなサービス障害やアプリケーションのシャットダウンをもたらしたり、JBoss Enterprise Application Platform 6 のシャットダウンを引き起こす可能性があるイベントを表示するのに使用します。
|
5.1.5. デフォルトのログファイルの場所
これらは、デフォルトのロギング設定に対して作成されたログファイルです。デフォルトの設定では、周期的なログハンドラーを使用してサーバーログファイルが書き込まれます。
ログファイル | 説明 |
---|---|
EAP_HOME/standalone/log/boot.log |
サーバールートログ。サーバーの起動に関連するログメッセージが含まれます。
|
EAP_HOME/standalone/log/server.log |
サーバーログ。サーバー起動後のすべてのログメッセージが含まれます。
|
ログファイル | 説明 |
---|---|
EAP_HOME/domain/log/host-controller/boot.log |
ホストコントローラーブートログ。ホストコントローラーの起動に関連するログメッセージが含まれます。
|
EAP_HOME/domain/log/process-controller/boot.log |
プロセスコントローラーブートログ。プロセスコントローラーの起動に関連するログメッセージが含まれます。
|
EAP_HOME/domain/servers/SERVERNAME/log/boot.log |
指定されたサーバーのサーバーブートログ。指定されたサーバーの起動に関連するログメッセージが含まれます。
|
EAP_HOME/domain/servers/SERVERNAME/log/server.log |
指定されたサーバーのサーバーログ。指定されたサーバー起動後のすべてのログメッセージが含まれます。
|