说明
一个完善的系统应该是有循环清理旧数据策略的. elk当日志平台的话,一般只需要保存一段时间就够了.删除策略就直接循环删除索引.
索引是每天生成一个,包含当天日期.这样才可以按照日期来进行删除.
可以用命令查看当前的索引
curl --user elastic:xxxxxxxx -XGET '192.168.12.31:9200/_cat/indices?v'

脚本1
#/bin/bash
#es-index-clear
#只保留7天内的日志索引
LAST_DATA=`date -d "-7 days" "+%Y.%m.%d"`
#删除上个月份所有的索引
curl -u elastic:xxxx(密码) -XDELETE 'http://192.168.12.31:9200/*-'${LAST_DATA}'*'
说明
这种是属于比较简单粗暴的删除,真正的场合应该每个索引会保留不同的时间的,需要根据具体索引来定义删除时间.
网友评论