elasticsearch-数据自动删除

2020-06-01 00:00:00 索引 专区 日志 脚本 希望

近我使用elasticsearch作为日志的存储分析引擎。用来存储团队开发人员的日志。使用es的过程中,索引越来越多,没有及时删除,就导致集群某台实例oom了。


解决办法:

编写一个shell脚本,然后使用linux的crontab,每天0点执行下。


1.寻找索引的规律

我们的日志索引格式如下:

以logstach开头,以年.月.日结尾

于是,我就想到使用正则匹配,即 logstash-*-12.15.11。


2.编写shell脚本

#!/bin/bash
echo "start delete es data"
echo `date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"`
dateStr=`date -d -32day +%Y.%m.%d`
echo delete time is ${dateStr}
#`curl -XDELETE 'http://10.240.47.81:9200/logstash-v4_insert_log-"${dateStr}'`
echo curl -XDELETE 'http://10.240.47.81:9200/logstash-*-'${dateStr}
result=`curl -XDELETE 'http://10.240.47.81:9200/logstash-*-'${dateStr}`
sleep 3
echo delete result ${result}

相关文章