log4j-ロギングメソッド
Loggerクラスは、ロギングアクティビティを処理するためのさまざまなメソッドを提供します。Loggerクラスでは、新しいLoggerインスタンスをインスタンス化することはできませんが、Loggerオブジェクトを取得するための2つの静的メソッドを提供します。
- public static Logger getRootLogger();
- public static Logger getLogger(String name);
2つのメソッドの最初のメソッドは、アプリケーションインスタンスのルートロガーを返しますが、名前はありません。
他の名前付きロガーオブジェクトインスタンスは、ロガーの名前を渡すことにより、2番目のメソッドを介して取得されます。ロガーの名前は、渡すことができる任意の文字列にすることができます。通常は、前の章で使用したクラス名またはパッケージ名であり、以下で説明します。
static Logger log = Logger.getLogger(log4jExample.class.getName());
ロギング方法
名前付きロガーのインスタンスを取得したら、ロガーのいくつかのメソッドを使用してメッセージをログに記録できます。Loggerクラスには、ロギング情報を出力するための次のメソッドがあります。
# | メソッドと説明 |
---|---|
1 | public void debug(Object message) レベルLevel.DEBUGでメッセージを出力します。 |
2 | public void error(Object message) レベルLevel.ERRORのメッセージを出力します。 |
3 | public void fatal(Object message) レベルLevel.FATALでメッセージを出力します。 |
4 | public void info(Object message) レベルLevel.INFOでメッセージを出力します。 |
5 | public void warn(Object message) レベルLevel.WARNでメッセージを出力します。 |
6 | public void trace(Object message) レベルLevel.TRACEでメッセージを出力します。 |
すべてのレベルはで定義されています org.apache.log4j.Level クラスと上記のメソッドのいずれかは、次のように呼び出すことができます-
import org.apache.log4j.Logger;
public class LogClass {
private static org.apache.log4j.Logger log = Logger.getLogger(LogClass.class);
public static void main(String[] args) {
log.trace("Trace Message!");
log.debug("Debug Message!");
log.info("Info Message!");
log.warn("Warn Message!");
log.error("Error Message!");
log.fatal("Fatal Message!");
}
}
コンパイルして実行するとき LogClass プログラムでは、次の結果が生成されます-
Debug Message!
Info Message!
Warn Message!
Error Message!
Fatal Message!
レベルと組み合わせて使用すると、すべてのデバッグメッセージの意味がわかります。次の章でレベルについて説明します。その後、さまざまなレベルのデバッグと組み合わせてこれらのメソッドを使用する方法を十分に理解できます。