elasticsearch - 删除旧索引elasticsearch?

标签 elasticsearch logstash kibana

我正在使用ELK堆栈来分析日志。因此,按照默认配置,ES会通过"logsatash-YYYY-MM-DD"创建新索引。
因此,如果我将logstash配置为如下所示:

/var/log/rsyslog/**/2014-12-0[1-7]/auditd.log

因此,它正在读取旧日志,并且创建的索引名称将为"logstash-2015-03-20",因此该索引将具有先前日期的文档(日志)。

当我必须删除索引时,会发生我的问题。如果我只需要保留最后一周的数据并清除较旧的指标。当我删除除最近7天之外的索引名称时,我无法跟踪哪些日志名称保留在哪几天。例如:2014-12-07日期的日志可以保存在名为logstash-2015-03-19logstash-2015-03-20的任何索引中。

那么我应该如何删除索引呢?

最佳答案

日志消息根据@timestamp字段的值(使用UTC时间)存储在索引中。如果您的2014-12-07日志以2015-03-19结尾,则此时间戳解析不正确。

通过添加grok和/或date过滤器更正此问题,您的2014-12-07日志将最终显示在logstash-2014.12.07索引中,清理旧日志将非常简单。

关于elasticsearch - 删除旧索引elasticsearch?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29159833/

相关文章:

ElasticSearch 聚合 - (术语?)查询中的 sum_other_doc_count?

.net - .Net Nest中的ElasticSearch过滤器聚合

elasticsearch - Kibana 连接两个独立的事件

kibana - 如何在 tomcat 中部署 Kibana4?

elasticsearch - 使用分层路径分析的值的查询在Kibana和ElasticSearch中是否正常工作?

spring-boot - 如何使用Java中的Rest API在 Elasticsearch 中索引对象数组

elasticsearch - 筛选所有必须包含所有指定值的字典数组

elasticsearch - 在logstash配置中进行kafka并将输出发送到ES

elasticsearch - 使用Logstash “%{[source]}”仅显示Elasticsearch Index的文件名

elasticsearch - ElasticSearch的查询字符串语法中的单引号和双引号有什么区别?