主要针对Elasticsearch操作
我这里的数据没必要留存很久,像java日志只是给开发实时查看的,nginx日志用来写周报图表用,也没必要留存很久。
主要操作:
查看所有索引(包含索引数据大小)
curl 'localhost:9200/_cat/indices?v'
可以加grep过滤
删除索引(也删除了对应的数据)
curl -XDELETE http://localhost:9200/axt_examination_log-2021.07.30 #删除单条索引
curl -XDELETE http://localhost:9200/axt_examination_log-2021.07.3{0..1} #删除连续多条索引
curl -XDELETE http://localhost:9200/axt_examination_log-2021.07.30,axt_examination_log-2021.08.30 #删除多条索引
有了这两个命令可以开始编写下面脚本
# cat es_delete_index.sh
#!/bin/bash
#删除java 15天前索引
source /etc/profile
date=`date -d "15 days ago" +%Y.%m.%d`
log_name='
axt_resources_log
axt_user_log
axt_data_log
axt_crm_log
axt_statistics_log
axt_mhcz_log
axt_future_log
axt_examination_log
axt_usercenter_log
'
for i in $log_name
do
curl -XDELETE http://localhost:9200/$i-$date
done
添加到计划任务每天自动执行即可