在 elasticsearch 中删除超过 10 天的数据

Kav*_*vya 3 ubuntu search elasticsearch kibana elk

我是 elasticsearch 的新手,我想删除我的 elasticsearch 索引中超过 10 天的文档。我只想保留最近 10 天的数据。所以有什么办法可以自动删除最后 11 天的索引。我试过的..

DELETE logstash-*/_query
{
 "query": {
   "range": {
     "@timestamp": {
       "lte": "now-10d"
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我在 kibana 开发工具上运行时遇到的错误

{
"error": "Incorrect HTTP method for uri [/logstash-*/_query?pretty] and method [DELETE], 
allowed: [POST]",
"status": 405
}
Run Code Online (Sandbox Code Playgroud)

请帮助解决此问题。

Val*_*Val 6

您需要利用Delete by Query Endpoint,如下所示:

use POST           use this endpoint
 |                      |
 V                      V
POST logstash-*/_delete_by_query
{
 "query": {
   "range": {
     "@timestamp": {
       "lte": "now-10d"
      }
    }
  }
}
  ^
  |
the query part is fine !!
Run Code Online (Sandbox Code Playgroud)