date - 无法在使用查询的 Elasticsearch 中实现日期范围过滤器

标签 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_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插件的上述查询执行日期范围过滤器,则运行良好。

flex 版本5.2

问候,
库纳尔

最佳答案

您只需要将查询更改为此:

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"
          }
        }
      }
    }
  }
}'

关于date - 无法在使用查询的 Elasticsearch 中实现日期范围过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43884942/

相关文章:

sql - 新用户在 WordPress 注册后 36 小时向管理员发送电子邮件

PHP 回显日期作为字符串

r - 如何检查日期是否在 R 中的间隔列表内?

php - 通过 sendgrid 发送的电子邮件未送达

elasticsearch - 下面的 Elasticsearch 查询中的错误结果

elasticsearch - 更新elasticsearch模板而不覆盖它

jquery - 在 jQuery Datepicker 上突出显示 MySql 日期

php - 如何从中获取 Cookie curl?

javascript - CORS header 'Access-Control-Allow-Origin' 仅在浏览器/jquery 中丢失,但可以使用 curl

elasticsearch - 有没有一种方法可以在汇总后拉回字段名称?