Log4j-log-formatting

提供:Dev Guides
移動先:案内検索

log4j-ログのフォーマット

Apache log4jはさまざまな Layout オブジェクトを提供し、各オブジェクトはさまざまなレイアウトに従ってロギングデータをフォーマットできます。 また、アプリケーション固有の方法でロギングデータをフォーマットするレイアウトオブジェクトを作成することもできます。

すべてのレイアウトオブジェクトは、 Appender オブジェクトから LoggingEvent オブジェクトを受け取ります。 次に、レイアウトオブジェクトはLoggingEventからメッセージ引数を取得し、適切なObjectRendererを適用してメッセージの文字列表現を取得します。

レイアウトの種類

階層の最上位クラスは、抽象クラス org.apache.log4j.Layout です。 これは、log4j APIの他のすべてのレイアウトクラスの基本クラスです。

Layoutクラスはアプリケーション内で抽象として定義されています。このクラスを直接使用することはありません。代わりに、次のようなサブクラスを使用します。

  • DateLayout
  • リンク:/log4j/log4j_htmllayout [HTMLLayout]
  • リンク:/log4j/log4j_patternlayout [PatternLayout。]
  • SimpleLayout *XMLLayout

レイアウト方法

このクラスは、他のすべてのレイアウトオブジェクトに共通するすべての操作のスケルトン実装を提供し、2つの抽象メソッドを宣言します。

Sr.No. Methods & Description
1
  • public abstract boolean ignoresThrowable()*

ロギング情報が、ロギングイベントの一部として渡されたjava.lang.Throwableオブジェクトを処理するかどうかを示します。 LayoutオブジェクトがThrowableオブジェクトを処理する場合、Layoutオブジェクトはそれを無視せず、falseを返します。

2

public abstract String format(LoggingEvent event)

個々のレイアウトサブクラスは、レイアウト固有の書式設定のためにこのメソッドを実装します。

これらの抽象メソッドとは別に、Layoutクラスは以下にリストしたメソッドの具体的な実装を提供します。

Sr.No. Methods & Description
1

public String getContentType()

Layoutオブジェクトが使用するコンテンツタイプを返します。 基本クラスは、デフォルトのコンテンツタイプとしてtext/plainを返します。

2

public String getFooter()

ロギングメッセージのフッター情報を指定します。

3

public String getHeader()

ロギングメッセージのヘッダー情報を指定します。

各サブクラスは、これらのメソッドの具体的な実装をオーバーライドすることにより、クラス固有の情報を返すことができます。