JSON は、テキスト、boolean、数値、配列 (Array)、およびマップ (Map) で構成される複合型データです。

設定方法

テキストの場合

JSON 型フィールドの場合、テキスト型と boolean 型のフィールドは自動的に認識されます。

たとえば、次の jsonkey は jsonkey.key1:”text_value” などの条件を使用して照会できます。 .

jsonkey: {
   key1:text_value,
   key2:true,
   key3:3.14
}

数値のデータ型

データ型を設定してパスを指定することによって、JSON 配列にない double 型または long 型のデータを照会することができます。

たとえば、jsonkey.key3 フィールドが double 型の場合、クエリ文は次のようになります。

 jsonkey.key3 > 3

非完全有効な JSON

非完全有効な JSON には、無効な部分が表示されるまで、有効な部分を解析します。

例:

"json_string": 
{
     "key_1" : "value_1",
     "key_map" : 
      {
             "key_2" : "value_2",
             "key_3" : "valu

key_3 の後のデータは切り捨てられ、失われます。 そのような一部が欠落しているログに対して、json_string.key_map.key_2 フィールドまでのログが正しく解析されます。

注意事項

  • JSON オブジェクト型と JSON 配列型はサポートされていません。
  • JSON 配列にフィールドを含めません。
  • boolean 型フィールドはテキスト型に変換できます。

クエリ構文

指定した Key でクエリする場合、クエリ文に JSON の親パスの接頭辞を追加する必要があります。 テキスト型と数値型のクエリ構文は他の型と同じです。 詳細については、クエリ構文 をご参照ください。