Date 无法使用查询在弹性搜索中实现日期范围筛选器
当我使用curl执行下面的查询时Date 无法使用查询在弹性搜索中实现日期范围筛选器,date,curl,elasticsearch,filter,range,Date,Curl,elasticsearch,Filter,Range,当我使用curl执行下面的查询时 curl -XGET 'http://localhost:9200/logstash*/_search' -d '{ "query" : { "filter" : [ "range" : { "timestamp" : {"gt" : "2017-02-01 00:00:00","lt" : "2017-05-01 00:00:00"}}]}}' 我正在犯错误 {"error":{"root_cause":[{"type":"parsing_exceptio
curl -XGET 'http://localhost:9200/logstash*/_search' -d '{ "query" : { "filter" : [ "range" : { "timestamp" : {"gt" : "2017-02-01 00:00:00","lt" : "2017-05-01 00:00:00"}}]}}'
我正在犯错误
{"error":{"root_cause":[{"type":"parsing_exception","reason":"[filter] query malformed, no start_object after query name","line":1,"col":26}],"type":"parsing_exception","reason":"[filter] query malformed, no start_object after query name","line":1,"col":26},"status":400}
但是,如果我使用sense插件的上述查询执行日期范围过滤器,它运行良好
弹性版本5.2
问候,,
Kunal您只需将查询更改为:
curl -XGET 'http://localhost:9200/logstash*/_search' -d '{
"query": {
"bool": {
"filter": {
"range": {
"timestamp": {
"gt": "2017-02-01 00:00:00",
"lt": "2017-05-01 00:00:00"
}
}
}
}
}
}'
谢谢val,它起作用了…我的查询也起作用了…实际上问题在于时间戳格式…最初的问题是由于您的查询格式不正确。实际上,您可能对日期格式有另一个问题。