【问题标题】:How to purge data in elasticsearch index using query in curl如何使用 curl 中的查询清除弹性搜索索引中的数据
【发布时间】:2016-06-07 14:35:53
【问题描述】:

我正在尝试使用curl 删除弹性搜索索引中的部分数据。我正在尝试根据时间戳查询将其删除(例如从特定时间清除数据)。我尝试了以下查询,但它删除了索引中的完整数据。

curl -XDELETE 'http://beepal1.tms.toyota.com:9200/logstash-sys_timestamp' -d '
{
  "query": 
  {
    "range": 
                {
      "@timestamp": 
                  { 
                  "gte": "2016-05-27T07:00:00.000Z",
                  "lte": "2016-05-28T06:59:59.999Z"
      }
    }
  }
}'

我不知道我哪里出错了。

提前致谢

【问题讨论】:

    标签: curl elasticsearch


    【解决方案1】:

    您需要先安装delete by query plugin,然后才能运行:

    curl -XDELETE 'http://beepal1.tms.toyota.com:9200/logstash-sys_timestamp/_query' -d '
    {
      "query": 
      {
        "range": 
                    {
          "@timestamp": 
                      { 
                      "gte": "2016-05-27T07:00:00.000Z",
                      "lte": "2016-05-28T06:59:59.999Z"
          }
        }
      }
    }'
    

    【讨论】:

    • 我收到了这条消息,但数据没有被删除。 {"took":200,"timed_out":false,"_indices":{"_all":{"found":0,"deleted":0,"missing":0,"failed":0}},"failures":[]}
    • 这可能意味着没有数据与您的查询匹配。您可以尝试增加日期间隔吗?
    猜你喜欢
    • 2014-06-22
    • 1970-01-01
    • 1970-01-01
    • 2021-03-09
    • 1970-01-01
    • 2012-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多