Package nablarch.core.log.basic
Class LogWriterSupport
java.lang.Object
nablarch.core.log.basic.LogWriterSupport
- All Implemented Interfaces:
LogWriter
- Direct Known Subclasses:
FileLogWriter,StandardOutputLogWriter
@Published(tag="architect")
public abstract class LogWriterSupport
extends Object
implements LogWriter
LogWriterの実装をサポートするクラス。このクラスでは、下記の機能を提供する。
LogLevelに応じた出力制御LogFormatterを使用したログのフォーマット
プロパティファイルの記述ルールを下記に示す。
- writer.<
LogWriterの名称>.level LogLevelの名称。オプション。
LogLevelの名称を指定する。
ここで指定したレベル以上のログを全て出力する。 指定がない場合はレベルに応じた出力制御を行わず、全てのレベルのログを出力する。- writer.<
LogWriterの名称>.formatter.className LogWriterで使用するLogFormatterのクラス名。
LogFormatterを実装したクラスのFQCNを指定する。 指定がない場合はBasicLogFormatterを使用する。- writer.<
LogWriterの名称>.formatter.<プロパティ名> LogFormatter毎のプロパティに設定する値。
設定内容は、使用するLogFormatterのJavadocを参照すること。
- Author:
- Kiyohito Itoh
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected LogFormattercreateLogFormatter(ObjectSettings settings) 設定を使用してLogFormatterを生成する。protected LogFormatterLogFormatterを取得する。protected StringgetName()設定で指定されたLogWriterの名称を取得する。protected String設定情報を取得する。
設定情報のフォーマットを下記に示す。
WRITER NAME = [<LogWriterの名称>]
WRITER CLASS = [<LogWriterのクラス名>]
FORMATTER CLASS = [<LogFormatterのクラス名>]
LEVEL = [<ログの出力制御の基準とするLogLevel>]voidinitialize(ObjectSettings settings) 初期処理を行う。
ログの出力先に応じたリソースの確保などを行う。booleanneedsToWrite(LogContext context) 現在の設定から、指定されたログエントリを出力するか否かを返す。protected voidonInitialize(ObjectSettings settings) 初期処理を行う。
ログの出力先に応じたリソースの確保などを実装する。
デフォルト実装では何もしない。protected void終了処理を行う。
ログの出力先に応じて確保しているリソースの解放などを実装する。
デフォルト実装では何もしない。protected abstract voidフォーマット済みのログを出力先に書き込む。void終了処理を行う。
ログの出力先に応じて確保しているリソースの解放などを行う。voidwrite(LogContext context) フォーマット済みのログを出力先に書き込む。
設定でLogLevelが指定されている場合は、有効なレベルの場合のみonWrite(String)メソッドを呼び出す。
有効なレベルのログでない場合は、何も処理しない。
-
Constructor Details
-
LogWriterSupport
public LogWriterSupport()
-
-
Method Details
-
initialize
- Specified by:
initializein interfaceLogWriter- Parameters:
settings- LogWriterの設定
-
createLogFormatter
設定を使用してLogFormatterを生成する。- Parameters:
settings-LogFormatterの設定- Returns:
- 設定を使用して生成した
LogFormatter。指定がない場合はnull
-
onInitialize
初期処理を行う。
ログの出力先に応じたリソースの確保などを実装する。
デフォルト実装では何もしない。- Parameters:
settings-LogWriterの設定内容
-
terminate
public void terminate()終了処理を行う。
ログの出力先に応じて確保しているリソースの解放などを行う。 -
onTerminate
protected void onTerminate()終了処理を行う。
ログの出力先に応じて確保しているリソースの解放などを実装する。
デフォルト実装では何もしない。 -
write
フォーマット済みのログを出力先に書き込む。
設定でLogLevelが指定されている場合は、有効なレベルの場合のみonWrite(String)メソッドを呼び出す。
有効なレベルのログでない場合は、何も処理しない。- Specified by:
writein interfaceLogWriter- Parameters:
context-LogContext
-
needsToWrite
現在の設定から、指定されたログエントリを出力するか否かを返す。- Parameters:
context- ログエントリオブジェクト- Returns:
- ログを出力する場合はtrue
-
onWrite
フォーマット済みのログを出力先に書き込む。- Parameters:
formattedMessage- フォーマット済みのログ
-
getSettings
設定情報を取得する。
設定情報のフォーマットを下記に示す。
WRITER NAME = [<LogWriterの名称>]
WRITER CLASS = [<LogWriterのクラス名>]
FORMATTER CLASS = [<LogFormatterのクラス名>]
LEVEL = [<ログの出力制御の基準とするLogLevel>]- Returns:
- 設定情報
-
getName
設定で指定されたLogWriterの名称を取得する。- Returns:
- 設定で指定された
LogWriterの名称
-
getFormatter
LogFormatterを取得する。- Returns:
LogFormatter
-