好的想法是十分钱一打,真正无价的是能够实现这些想法的人。

如何清理Elasticsearch特定时间段数据?

Elasticsearch | 作者 renguzi | 发布于2016年12月16日 | 阅读数:25124

问题是这样的,项目上新上一套ELK日志分析系统,随着时间的推移,日志越来越大,就写了个定时任务清理7天前的数据。
 


#! /bin/bash
echo "Begin @ `date +%Y%m%d%H%M%S`"
d7=$(date +%Y.%m.%d --date '7 days ago')
curl -XDELETE "http://192.168.1.30:9200/logstash-$d7?pretty"
echo "End @ `date +%Y%m%d%H%M%S`"


后来,发现这样并没有解决实际问题,因为绝大多数日志产生于系统每天凌晨0点到8点之间的批处理任务所产生,而这些日志其实是没有分析价值的。所以,请问下,如何从Elasticsearch中只清理掉系统每天凌晨0点到8点之间所产生的数据呢?
 
系统中,最近7天的日志信息如下:


[root@localhost rm_elk_log_7days]# curl http://192.168.1.30:9200/_cat/indices
yellow open logstash-2016.12.11 5 1  85735 0  31.9mb  31.9mb 
yellow open logstash-2016.12.12 5 1 493016 0 224.7mb 224.7mb 
yellow open twitter             5 1      1 0   4.3kb   4.3kb 
yellow open logstash-2016.12.10 5 1 136902 0    47mb    47mb 
yellow open .kibana             1 1     28 1  42.1kb  42.1kb 
yellow open logstash-2016.12.14 5 1 536879 0 214.7mb 214.7mb 
yellow open logstash-2016.12.13 5 1 609423 0 286.4mb 286.4mb 
yellow open logstash-2016.12.16 5 1  88745 0  41.4mb  41.4mb 
yellow open logstash-2016.12.15 5 1 598826 0 272.1mb 272.1mb 
[root@localhost rm_elk_log_7days]#


新手,刚接触ELK,请给个思路或者解决问题的方向,谢谢!
已邀请:

wungking - 90后it

赞同来自: zhwy103 greatstep renguzi famoss

这个有三种思路,
第一种:设置入ES的条件,0-8点的日志数据就不入ES,这样就不需要有删除的操作;
 
第二种:整理这类日志,将需要的数据 转存到新的索引下,不需要的直接丢掉,这样可以保证你能存储较多的日志数      据,也不担心容量增加的太快;
 
第三种:楼上提的那种方法,官网上只是一个实验性的API,按照官网描述,这个操作应该是比较耗资源的;
 
综上:你还是考虑第一种方法吧,不收集不需要的时间段的数据

medcl - 今晚打老虎。

赞同来自: laoyang360 insist_93

Elasticsearch 新推出了一个 ILM 的功能,Index Lifecycle Management 的功能,在Kibana 界面里面就可以直接配置索引的保留时间和过期策略。

medcl - 今晚打老虎。

赞同来自: doom

Hey,es5.0提供了 Rollover 特性,去看看吧

sundong306

赞同来自:

[root@SDS-david-yufabu ~]# cat                   /data/app/logstash/config/clean_logstash_log.sh
#!/bin/bash
#定时清除elk索引,7天
DATE=`date -d "7 days ago" +%Y.%m.%d`    >> /tmp/clean_logstash.log
INDEX=`curl -XGET 'http://127.0.0.1:9200/_cat/indices/?v'|awk '{print $3}'`   >> /tmp/clean_logstash.log
curl -XDELETE  http://127.0.0.1:9200/*-${DATE}   >> /tmp/clean_logstash.log

[root@SDS-david-yufabu ~]#

medcl - 今晚打老虎。

赞同来自:

社区已经有文章介绍了,来自 @rockybean
https://elasticsearch.cn/article/6358

guopengfei

赞同来自:

我发现了一个不错的elasticsearch 2.3.3的翻译文档,还不错:
https://www.blog-china.cn/temp ... .html

guopengfei

赞同来自:

我发现了一个不错的elasticsearch 2.3.3的翻译文档,还不错,你可以在这个中文翻译文档里看一下有没有你想要的东西:
https://www.blog-china.cn/temp ... .html

要回复问题请先登录注册