弹性搜索范围请求


Elasticsearch range request

我想创建一个请求,将过去 15 分钟的所有文档传输给我。我的 XPUT 文档如下所示:

curl -XPUT localhost:9200/indexname/documentname/4 -d'
{
    "user": "sergey",
    "onlineUserCount": "43"
}'

我像这样搜索:

$ curl -XGET localhost:9200/indexname/documentname/_query -d'{
"query":{
  "range":{
    "timestamp":{
      "gt": "now -15m"
    }
  }
}}'

但它给了我

{"_index":"indexname","_type":"documentname","_id":"_query","found":false}

请帮忙!!

您需要使用

_search 端点而不是 _query 端点,在 HTTP 请求正文中发送查询时,更建议使用 -XPOST。

$ curl -XPOST localhost:9200/indexname/documentname/_search -d'{
"query":{
  "range":{
    "timestamp":{
      "gt": "now -15m"
    }
  }
}}'