Class FailureJsonLogFormatter

java.lang.Object
nablarch.core.log.app.FailureLogFormatter
nablarch.core.log.app.FailureJsonLogFormatter

@Published(tag="architect") public class FailureJsonLogFormatter extends FailureLogFormatter
障害通知ログと障害解析ログのメッセージをJSON形式でフォーマットするクラス。

FailureLogFormatterでは、フォーマットとして出力内容を設定するが、 本クラスでは、 notificationTargets および、analysisTargets プロパティにて、 出力項目を指定する。指定可能な出力項目は下記の通り。

  • failureCode: 障害コード
  • message: メッセージ
  • data: 処理対象データ
  • contact: 連絡先

  • Constructor Details

    • FailureJsonLogFormatter

      public FailureJsonLogFormatter()
  • Method Details

    • initialize

      protected void initialize()
      初期化
      Overrides:
      initialize in class FailureLogFormatter
    • initializeFormatterSupport

      protected final void initializeFormatterSupport(Map<String,String> props, String prefix, String filePath)
      各種ログのJSONフォーマット支援オブジェクトの初期化
      Parameters:
      props - 各種ログ出力の設定情報
    • createSerializationManager

      protected JsonSerializationManager createSerializationManager(JsonSerializationSettings settings)
      変換処理に使用するJsonSerializationManagerを生成する。
      Parameters:
      settings - 各種ログ出力の設定情報
      Returns:
      JsonSerializationManager
    • initializeTargets

      protected final void initializeTargets(Map<String,String> props)
      出力項目の初期化
      Parameters:
      props - 各種ログ出力の設定情報
    • getStructuredTargets

      protected List<JsonLogObjectBuilder<FailureLogFormatter.FailureLogContext>> getStructuredTargets(Map<String,String> props, String targetsPropName)
      ログ出力項目を取得する。
      Parameters:
      props - 各種ログ出力の設定情報
      targetsPropName - 出力項目のプロパティ名
      Returns:
      ログ出力項目
    • formatNotificationMessage

      public String formatNotificationMessage(Throwable error, Object data, String failureCode, Object[] messageOptions)
      障害通知ログのメッセージをフォーマットする。
       フォーマット対象の出力項目を下記に示す。
       障害コード
       障害コードから取得したメッセージ
       派生元実行時ID
       
      Overrides:
      formatNotificationMessage in class FailureLogFormatter
      Parameters:
      error - エラー情報
      data - 処理対象データ
      failureCode - 障害コード
      messageOptions - 障害コードからメッセージを取得する際に使用するオプション情報
      Returns:
      フォーマット済みのメッセージ
    • formatAnalysisMessage

      public String formatAnalysisMessage(Throwable error, Object data, String failureCode, Object[] messageOptions)
      障害解析ログのメッセージをフォーマットする。
       フォーマット対象の出力項目を下記に示す。
       障害コード
       障害コードから取得したメッセージ
       派生元実行時ID
       
      Overrides:
      formatAnalysisMessage in class FailureLogFormatter
      Parameters:
      error - エラー情報
      data - 処理対象データ
      failureCode - 障害コード
      messageOptions - 障害コードからメッセージを取得する際に使用するオプション情報
      Returns:
      フォーマット済みのメッセージ
    • format

      protected String format(List<JsonLogObjectBuilder<FailureLogFormatter.FailureLogContext>> structuredTargets, Throwable error, Object data, String failureCode, Object[] messageOptions)
      指定されたフォーマット済みのログ出力項目を使用してメッセージをフォーマットする。
       フォーマット対象の出力項目を下記に示す。
       障害コード
       障害コードから取得したメッセージ
       派生元実行時ID
       
      Parameters:
      structuredTargets - ログ出力項目
      error - エラー情報
      data - 処理対象データ
      failureCode - 障害コード
      messageOptions - 障害コードからメッセージを取得する際に使用するオプション情報
      Returns:
      フォーマット後のメッセージ