@Published(tag="architect") public class JsonLogFormatter extends java.lang.Object implements LogFormatter
LogFormatterのJSON形式フォーマット実装クラス。
 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
     このログ出力のメッセージ。
 payload
     オプション情報に指定されたオブジェクトのフィールド情報。
     オブジェクトの型は  Map<String, Object>  でなければならない。
     Mapのアイテムがルート階層に追加される。
     キーが重複した場合は、いずれか一つのみが出力される。
 stackTrace
     エラー情報に指定された例外オブジェクトのスタックトレース。
     エラー情報の指定がない場合は表示しない。
 
 プロパティファイルの記述ルールを下記に示す。writer.<LogWriterの名称>.formatter.label.<LogLevelの名称の小文字>
   LogLevelに使用するラベル。オプション。LogLevelの名称を使用する。
   writer.<LogWriterの名称>.formatter.targets
   writer.<LogWriterの名称>.formatter.datePattern
   writer.<LogWriterの名称>.formatter.structuredMessagePrefix
   LogWriter| Modifier and Type | Class and Description | 
|---|---|
static class  | 
JsonLogFormatter.BootProcessBuilder
起動プロセスを処理するクラス。 
 | 
static class  | 
JsonLogFormatter.DateBuilder
出力日時を処理するクラス。 
 | 
static class  | 
JsonLogFormatter.ExecutionIdBuilder
実行時IDを処理するクラス。 
 | 
static class  | 
JsonLogFormatter.LoggerNameBuilder
ロガー名を処理するクラス。 
 | 
static class  | 
JsonLogFormatter.LogLevelBuilder
ログレベルを処理するクラス。 
 | 
static class  | 
JsonLogFormatter.MessageBuilder
メッセージを処理するクラス。 
 | 
static class  | 
JsonLogFormatter.PayloadBuilder
オプション情報に指定されたオブジェクトを処理するクラス。 
 | 
static class  | 
JsonLogFormatter.ProcessingSystemBuilder
処理方式を処理するクラス。 
 | 
static class  | 
JsonLogFormatter.RequestIdBuilder
リクエストIDを処理するクラス。 
 | 
static class  | 
JsonLogFormatter.RuntimeLoggerNameBuilder
実行時ロガー名を処理するクラス。 
 | 
static class  | 
JsonLogFormatter.StackTraceBuilder
エラー情報に指定された例外オブジェクトのスタックトレースを処理するクラス。 
 | 
static class  | 
JsonLogFormatter.UserIdBuilder
ユーザIDを処理するクラス。 
 | 
| Constructor and Description | 
|---|
JsonLogFormatter()  | 
| Modifier and Type | Method and Description | 
|---|---|
protected FormatErrorSupport | 
createFormatErrorSupport()
フォーマットエラーを処理するクラスを生成する。 
 | 
protected JsonSerializationManager | 
createSerializationManager(ObjectSettings settings)
Jsonのシリアライズに使用する管理クラスを生成する。 
 | 
protected java.util.Map<java.lang.String,java.lang.Object> | 
createStructuredObject(LogContext context)
ログコンテキストからシリアライズ用のオブジェクトを作成する。 
 | 
protected java.util.List<JsonLogObjectBuilder<LogContext>> | 
createStructuredTargets(ObjectSettings settings)
ログ出力項目を生成する。 
 | 
java.lang.String | 
format(LogContext context)
ログのフォーマットを行う。 
 | 
protected LogLevelLabelProvider | 
getLogLevelLabelProvider(ObjectSettings settings)
LogLevelLabelProviderを取得する。 
 | 
void | 
initialize(ObjectSettings settings)
初期処理を行う。 
 | 
public void initialize(ObjectSettings settings)
initialize in interface LogFormattersettings - LogFormatterの設定protected FormatErrorSupport createFormatErrorSupport()
protected JsonSerializationManager createSerializationManager(ObjectSettings settings)
settings - LogFormatterの設定protected java.util.List<JsonLogObjectBuilder<LogContext>> createStructuredTargets(ObjectSettings settings)
settings - LogFormatterの設定protected LogLevelLabelProvider getLogLevelLabelProvider(ObjectSettings settings)
settings - LogFormatterの設定public java.lang.String format(LogContext context)
format in interface LogFormattercontext - LogContextprotected java.util.Map<java.lang.String,java.lang.Object> createStructuredObject(LogContext context)
context - ログコンテキスト