elasticsearch Elasticsearch,筛选器未按预期工作
我使用的是elasticsearch 1.7.1。我希望按照下面描述的逻辑获取聚合文档:
elasticsearch Elasticsearch,筛选器未按预期工作,
elasticsearch,
elasticsearch,我使用的是elasticsearch 1.7.1。我希望按照下面描述的逻辑获取聚合文档: response = "200" AND timestamp >= 2016-01-07T18:00:00.000Z AND timestamp < 2016-01-15T18:00:00.000Z AND engine = "01ee20db31911aaedb97c847061ca49a" AND ( logType = "click1"
response = "200"
AND timestamp >= 2016-01-07T18:00:00.000Z
AND timestamp < 2016-01-15T18:00:00.000Z
AND engine = "01ee20db31911aaedb97c847061ca49a"
AND (
logType = "click1"
OR (
autocomplete = "1"
AND logType = "click2"
)
)
但我可以看到结果,这些结果不能显示。例如,我可以看到timestamp=2015-12-31T12:46:43.000Z或logType=“redirect”的记录。我的问题出了什么问题
谢谢。您的查询看起来是正确的。你能解释一下你是如何发送给ES的吗?你能发布你的地图吗?也许有些被退回的文件不应该被退回?如果它很长,您可能需要使用gist。通常,在通过
/head
插件中的GET发送查询时会发生这种行为。如果这是您的情况,请参见:这只是一个猜测,如果这是您的完整查询,它将返回所有文档。只有聚合结果将具有筛选结果
{
"aggregations": {
"my_aggs": {
"filter": {
"bool": {
"must": [{
"term": {
"response": "200"
}
}, {
"range": {
"timestamp": {
"from": "2016-01-07T18:00:00.000Z",
"to": "2016-01-15T18:00:00.000Z"
}
}
}, {
"term": {
"engine": "01ee20db31911aaedb97c847061ca49a"
}
}, {
"bool": {
"should": [{
"term": {
"logType": "click1"
}
}, {
"bool": {
"must": [{
"term": {
"autocomplete": "1"
}
}, {
"term": {
"logType": "click2"
}
}]
}
}]
}
}]
}
}
}
}
}