由于ELK比较吃资源所以日志不能一直保留,必须有一个清理策略
利用索引的生命周期来实现
参考自:
https://www.cnblogs.com/wei325/p/16101258.html
https://www.5axxw.com/questions/content/g3xpeh
所有命令均在kibana的dev tools的console中执行
第一步 添加生命周期策略 (7d表示删除7天前的索引)
PUT _ilm/policy/生命周期策略名称 { "policy": { "phases": { "delete": { "min_age": "7d", "actions": { "delete": {} } } } } }
第二步 创建索引模板(log-*表示匹配log-开头的索引)
PUT _template/索引模板名称 { "index_patterns": ["log-*"], "settings": { "index":{ "lifecycle":{ "name":"生命周期索引名称", "indexing_complete":true } } } }
第三步测试(创建一个索引,看下索引是否自动跟上了生命周期策略)
PUT log-test
以上是针对新建索引的方案,对于已存在的索引,需要手动设置一遍生命周期策略匹配到指定索引上
PUT log-*/_settings { "index": { "lifecycle": { "name": "生命周期策略名称" } } }