Package nablarch.core.log.basic
Class BasicLogFormatter
java.lang.Object
nablarch.core.log.basic.BasicLogFormatter
- All Implemented Interfaces:
LogFormatter
LogFormatter
の基本実装クラス。BasicLogFormatterクラスの特徴を下記に示す。
- ログに最低限必要な情報(日時、リクエストID、ユーザIDなど)を出力できる。
- アプリケーションを起動しているプロセスを識別するために、システムプロパティで指定されたプロセス名をログに出力できる。
- オブジェクトを指定してフィールド情報を出力できる。
- 例外オブジェクトを指定してスタックトレースを出力できる。
- フォーマットを設定のみで変更することができる。
$date$ このログ出力を要求した時点の日時。 $logLevel$ このログ出力のログレベル。 デフォルトはLogLevel列挙型の名称を文言に使用する。 文言はプロパティファイルの設定で変更することができる。 $loggerName$ このログ出力が対応するロガー設定の名称。 このログ出力を呼び出した箇所に関わらず、プロパティファイル(log.properties)に記載したロガー名となる。 $runtimeLoggerName$ 実行時に、フォーマット指定が無い場合に使用するフォーマットを下記に示す。LoggerManager
からロガー取得に指定した名称。 このログ出力を呼び出した際にLoggerManager.get(Class)
で指定したクラス名 またはLoggerManager.get(String)
で指定した名称となる。 $bootProcess$ 起動プロセスを識別する名前。 起動プロセスは、システムプロパティ"nablarch.bootProcess"から取得する。 指定がない場合はブランク。 $processingSystem$ 処理方式を識別する名前。 処理方式は、プロパティファイル("nablarch.processingSystem")から取得する。 指定がない場合はブランク。 $requestId$ このログ出力を要求した時点のリクエストID。 $executionId$ このログ出力を要求した時点の実行時ID $userId$ このログ出力を要求した時点のログインユーザのユーザID。 $message$ このログ出力のメッセージ。 指定がない場合はブランク。 $information$ オプション情報に指定されたオブジェクトのフィールド情報。 オブジェクトのフィールドに対して、Object#toString()メソッドを実行した結果を表示する。 オプション情報に指定されたオブジェクトが基本データ型のラッパクラス、CharSequenceインタフェース、 Dateクラスの場合は、オブジェクトに対してObject#toString()メソッドを実行した結果のみを表示する。 オブジェクト情報の指定がない場合は表示しない。 $stackTrace$ エラー情報に指定された例外オブジェクトのスタックトレース。 エラー情報の指定がない場合は表示しない。
$date$ -$logLevel$- $loggerName$ [$executionId$] boot_proc = [$bootProcess$] proc_sys = [$processingSystem$] req_id = [$requestId$] usr_id = [$userId$] $message$$information$$stackTrace$
プロパティファイルの記述ルールを下記に示す。
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
起動プロセスを取得するクラス。static class
出力日時を取得するクラス。static class
実行時IDを取得するクラス。static class
オプション情報に指定されたオブジェクトのフィールド情報を取得するクラス。static class
ロガー名を取得するクラス。static class
ログレベルを取得するクラス。static class
メッセージを取得するクラスstatic class
処理方式を取得するクラス。static class
リクエストIDを取得するクラス。static class
実行時ロガー名を取得するクラス。static class
エラー情報に指定された例外オブジェクトのスタックトレースを取得するクラス。static class
ユーザIDを取得するクラス。 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionformat
(LogContext context) ログのフォーマットを行う。protected DateFormat
getDateFormat
(ObjectSettings settings) 日時フォーマットを取得する。protected String
getFormat
(ObjectSettings settings) フォーマットを取得する。protected Map<String,
LogItem<LogContext>> getLogItems
(ObjectSettings settings) フォーマット対象のログ出力項目を取得する。protected LogLevelLabelProvider
getLogLevelLabelProvider
(ObjectSettings settings) LogLevelLabelProviderを取得する。void
initialize
(ObjectSettings settings) 初期処理を行う。
-
Constructor Details
-
BasicLogFormatter
public BasicLogFormatter()
-
-
Method Details
-
initialize
初期処理を行う。
フォーマットとログレベルに使用するラベルを初期化する。- Specified by:
initialize
in interfaceLogFormatter
- Parameters:
settings
- LogFormatterの設定
-
getLogItems
フォーマット対象のログ出力項目を取得する。- Parameters:
settings
- LogFormatterの設定- Returns:
- フォーマット対象のログ出力項目
-
getDateFormat
日時フォーマットを取得する。- Parameters:
settings
- LogFormatterの設定- Returns:
- 日時フォーマット
-
getLogLevelLabelProvider
LogLevelLabelProviderを取得する。- Parameters:
settings
- LogFormatterの設定- Returns:
- LogLevelLabelProvider
-
getFormat
フォーマットを取得する。- Parameters:
settings
- LogFormatterの設定- Returns:
- フォーマット
-
format
ログのフォーマットを行う。- Specified by:
format
in interfaceLogFormatter
- Parameters:
context
-LogContext
- Returns:
- フォーマット済みのログ
-