【问题标题】:Deleting old logs in elasticsearch came from logstashelasticsearch中删除旧日志来自logstash
【发布时间】:2018-04-15 11:03:37
【问题描述】:

我想删除来自logstash的弹性搜索中的旧日志。

我已阅读有关可用于删除此内容的馆长。

但它总是指出它将删除超过这么多天的旧索引。如果我执行它,它实际上会删除我的索引吗?或者只是该特定索引中的旧日志。

我有自定义索引,如 a、b、c 等。我的索引中没有时间字符串参数。

curator delete indices --older-than 14 --time-unit days --timestring %Y.%m.%d --regex '^logstash-'

这些格式的索引如何删除?

【问题讨论】:

  • Curator 正在删除整个索引,基于它们的名称模式(应包括日期)。因此,索引名称中应包含一个日期模式,Curator 将使用它来确定您的命令是否涵盖该索引。

标签: elasticsearch elastic-stack elasticsearch-curator


【解决方案1】:

Curator 无法从索引中删除数据。它只能删除一个或多个索引。这对您来说尤其困难,因为您的索引 hames 本质上不是时间序列(您提到的 a、b、c 等)。

您应该改用时间序列索引,并逐步淘汰已命名的非时间序列索引。

根据您共享的语法,很明显您正在阅读旧版本的 curator。那是旧的 Curator 3.x 语法。 Curator 3.x 已弃用,因为它仅支持 Elasticsearch 1.x 索引和 2.x 索引。 Curator 4.x 支持 2.x 索引和 5.x 索引。 Curator 5.x 仅支持 Elasticsearch 5.x 索引。见https://www.elastic.co/guide/en/elasticsearch/client/curator/5.3/version-compatibility.html

【讨论】:

  • 那么如何从索引中清除旧日志?目前对于 1.7G 的实际日志数据,弹性搜索已经创建了将近 15G 的日志..我需要清理一些比 20 天更早的旧日志..
  • 您需要研究如何使用 delete_by_query。这对于时间序列用例来说是非常次优的。
猜你喜欢
  • 2015-12-12
  • 2014-10-30
  • 2015-08-25
  • 1970-01-01
  • 2019-02-13
  • 1970-01-01
  • 2014-05-18
  • 1970-01-01
  • 2018-05-20
相关资源
最近更新 更多