Json是由文本、布尔、数值、数组(Array)和图(Map)构成的组合类型数据。

配置说明

文本类数据

对JSON类型字段,会自动识别text/bool类型字段。

例如,以下jsonkey可以通过jsonkey.key1:"text_value"jsonkey.key2:true 等条件进行查询。

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

数值类数据

非JSON array中的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 object、json array类型。
  • 字段不能在json array中。
  • bool类型字段可以转成text类型。

查询语法

指定Key查询需要加上JSON中父路径的前缀,文本、数值类查询语法与其他类型相同,详情请参见查询语法