我正在尝试在弹性搜索服务器上运行以下查询。
{
"query": {
"has_child":{
"type": "log",
"query": {
"simple_query_string" : {
"query" : "ipsum"
}
}
}
}
}
我们的想法是使用查询字符串查询子元素,因为我们希望为客户提供灵活的搜索。
我尝试运行此查询并获得0结果,但如果我在“日志”上运行相同的查询,我会得到很多结果。
任何人都知道是否允许在has_child上使用查询字符串?
- 修改 -
这里有映射:
{
"template": "*",
"mappings": {
"device": {
"properties": {
"app": {
"type": "long"
},
"created_at": {
"type": "date"
},
"enabled": {
"type": "boolean"
},
"id": {
"type": "long"
},
"name": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"type": {
"type": "keyword",
"ignore_above": 256
},
"udid": {
"type": "keyword",
"ignore_above": 256
}
}
},
"log": {
"_parent": {
"type": "device"
},
"properties": {
"app": {
"type": "long"
},
"session": {
"type": "long"
},
"version.id": {
"type": "keyword",
"ignore_above": 256
},
"version.version": {
"type": "keyword",
"ignore_above": 256
},
"version.build": {
"type": "keyword",
"ignore_above": 256
},
"text": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"method": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"file": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"log_level": {
"type": "long"
},
"tag": {
"type": "keyword",
"ignore_above": 256
},
"time": {
"type": "date",
"format": "date_time"
},
"absolute_time": {
"type": "long"
}
}
}
}
}