【发布时间】:2017-07-27 03:52:11
【问题描述】:
这是由 Elastic Search API 返回的文档结构:
{
"process_name":"process01",
"beat":
{
"hostname":"12345","name":"blablabla"
},
}
通过 process_name 过滤很容易,但是如何按嵌套在 beat 中的 host_name 过滤呢?
- 尝试 1 失败
{
"size":10000,
"query" : {
"bool" : {
"should": [
{ "match" : { "process_name" : "process01" } },
{ "match" : { "process_name" : "process02" } }
],
"must": [
{ "match" : { beat: { "hostname":"12345" } } }
]
}
}
}
错误信息 1:
(无法反序列化对象类型=class com.logshero.api.SearchApiRequest):
- 尝试 2 失败
{
"size":10000,
"query" : {
"bool" : {
"should": [
{ "match" : { "process_name" : "process01" } },
{ "match" : { "process_name" : "process02" } }
],
"must": [
{ "match" : { "hostname":"12345" } }
]
}
}
}
错误信息 2:
{"命中":{"total":0,"max_score":null,"命中":[]}}
【问题讨论】:
标签: json elasticsearch nested logz.io