すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:拡張プラグイン: JSON フィールドの展開

最終更新日:Aug 23, 2025

processor_json プラグインを使用して、JSON フィールドを展開できます。このトピックでは、processor_json プラグインのパラメーターについて説明し、構成例を示します。

重要
  • フォームベースの構成: テキストログとコンテナーの標準出力を収集する場合に使用できます。

  • JSON ベースの構成: テキストログを収集する場合には使用できません。

エントリポイント

Logtail プラグインを使用してログを処理するには、Logtail コレクション構成を作成または変更するときにプラグイン構成を追加できます。 詳細については、「データ処理用 Logtail プラグインの概要」をご参照ください。

構成

重要

processor_json プラグインは、Logtail 0.16.28 以後のバージョンでサポートされています。

フォームベースの構成

  • パラメーター

    [プロセッサの種類][JSON フィールドの展開] に設定します。次の表に、パラメーターを示します。

    パラメーター

    説明

    [元のフィールド]

    展開する元のフィールドの名前。

    [JSON 展開の深さ]

    JSON 展開の深さ。デフォルト値は 0 で、制限がないことを示します。値 1 は現在のレベルを示します。

    [JSON 展開コネクタ]

    展開されたキーのコネクタ。デフォルト値はアンダースコア (_) です。

    [JSON 展開フィールドプレフィックス]

    展開されたフィールドの名前に追加するプレフィックス。

    [配列の展開]

    配列を展開するかどうかを指定します。このパラメーターは、Logtail 1.8.0 以降のバージョンでサポートされています。

    [元のフィールドを保持]

    このオプションを選択すると、元のフィールドは解析されたログに保持されます。

    [元のフィールドがない場合にエラーを報告]

    このオプションを選択すると、生のログに指定された元のフィールドが含まれていない場合にエラーが報告されます。

    [展開されたフィールドのプレフィックスとして元のフィールド名を使用]

    このオプションを選択すると、システムはすべての展開された JSON フィールド名のプレフィックスとして元のフィールド名を使用します。

    [解析に失敗した場合に生のログを保持]

    このオプションを選択すると、解析に失敗した場合に生のログが保持されます。

  • この例では、s_key フィールドが展開されます。プレフィックス j が展開されたフィールド名に追加されます。元のフィールド名 s_key もプレフィックスとして使用されます。構成例を以下に示します。

    • 生のログ (Logtail がログを読み取るファイルパス)

      {"s_key":"{\"k1\":{\"k2\":{\"k3\":{\"k4\":{\"k51\":\"51\",\"k52\":\"52\"},\"k41\":\"41\"}}}}"}
    • Logtail プラグイン処理構成

      image

    • 処理結果

      image

JSON ベースの構成

  • パラメーター

    typeprocessor_json に設定します。次の表に、detail のパラメーターを示します。

    パラメーター

    タイプ

    必須

    説明

    SourceKey

    文字列

    はい

    展開する元のフィールドの名前。

    NoKeyError

    ブール値

    いいえ

    生のログに指定された元のフィールドが含まれていない場合にエラーを報告するかどうかを指定します。

    • true (デフォルト): エラーが報告されます。

    • false: エラーは報告されません。

    ExpandDepth

    整数

    いいえ

    JSON 展開の深さ。デフォルト値は 0 で、制限がないことを示します。値 1 は現在のレベルを示します。

    ExpandConnector

    文字列

    いいえ

    展開されたキーのコネクタ。デフォルト値はアンダースコア (_) です。

    Prefix

    文字列

    いいえ

    展開されたフィールドの名前に追加するプレフィックス。

    KeepSource

    ブール値

    いいえ

    解析されたログに元のフィールドを保持するかどうかを指定します。

    • true (デフォルト): フィールドは保持されます。

    • false: フィールドは保持されません。

    UseSourceKeyAsPrefix

    ブール値

    いいえ

    すべての展開された JSON フィールド名のプレフィックスとして元のフィールド名を使用するかどうかを指定します。

    KeepSourceIfParseError

    ブール値

    いいえ

    解析に失敗した場合に生のログを保持するかどうかを指定します。

    • true (デフォルト): ログは保持されます。

    • false: ログは保持されません。

    ExpandArray

    ブール値

    いいえ

    配列を展開するかどうかを指定します。このパラメーターは、Logtail 1.8.0 以降のバージョンでサポートされています。

    • false (デフォルト): 配列は展開されません。

    • true: 配列が展開されます。たとえば、{"k":["1","2"]}{"k[0]":"1","k[1]":"2"} に展開されます。

  • この例では、s_key フィールドが展開されます。プレフィックス j が展開されたフィールド名に追加されます。元のフィールド名 s_key もプレフィックスとして使用されます。構成例を以下に示します。

    • 生のログ (Logtail がログを読み取るファイルパス)

      {"s_key":"{\"k1\":{\"k2\":{\"k3\":{\"k4\":{\"k51\":\"51\",\"k52\":\"52\"},\"k41\":\"41\"}}}}"}
    • Logtail プラグイン処理構成

      {
        "processors":[
          {
            "type":"processor_json",
            "detail": {
              "SourceKey": "content",
              "NoKeyError":true,
              "ExpandDepth":0,
              "ExpandConnector":"-",
              "Prefix":"j",
              "KeepSource": false,
              "UseSourceKeyAsPrefix": true
            }
          }
        ]
      }
    • 処理結果

      image

参照