当前位置: 首页 > news >正文

链接追踪系列-00.es设置日志保存7天-番外篇

索引生命周期策略

ELK日志我们一般都是按天存储,例如索引名为"zipkin-span-2023-03-24",因为日志量所占的存储是非常大的,我们不能一直保存,而是要定期清理旧的,这里就以保留7天日志为例。
自动清理7天以前的日志可以用定时任务的方式,这样就需要加入多一个定时任务,可能不同服务记录的索引名又不一样,这样用定时任务配还是没那么方便。
ES给我们提供了一个索引的生命周期策略(lifecycle),就可以对索引指定删除时间,能很好解决这个问题。
索引生命周期分为四个阶段:HOT(热)=>WARM(温)=》COLD(冷)=>DELETE(删除)

给索引设生命周期策略(ILM)
这里为ELK日志超过7天的自动删除,所以只需要用到DELETE(删除阶段)

创建一个自动删除策略(auto_delete_policy):
delete:删除阶段,7天执行删除索引动作

PUT _ilm/policy/auto_delete_policy
{"policy": {"phases": {"delete": {"min_age": "7d","actions": {"delete": {}}}}}
}

在这里插入图片描述
查看策略:GET _ilm/policy/
在这里插入图片描述

#创建索引模板:索引模板可以匹配索引名称,匹配到的索引名称按这个模板创建mapping
PUT _template/elk_template
{"index_patterns": ["zipkin*"],"settings": {"index":{"lifecycle":{"name":"auto_delete_policy","indexing_complete":true}}}
}

在这里插入图片描述
说明:创建索引模板(elk_template),index.lifecycle.name把上面的自动删除策略绑定到elk索引模板
创建zipkin开头的索引时就会应用这个模板。
indexing_complete:true,必须设为true,跳过HOT阶段的Rollover

#查看模板:
GET /_template/
在这里插入图片描述

测试效果:
为了立刻知道演示结果,这里测试时把DELETE的日期又7天"7d"改为1分钟"1m"

PUT _ilm/policy/auto_delete_policy
{"policy": {"phases": {"delete": {"min_age": "1m","actions": {"delete": {}}}}}
}
#生命周期策略默认10分钟检测一次,为了方便测试,这里设为30s
PUT /_cluster/settings
{"transient": {"indices.lifecycle.poll_interval":"30s"}
}

在这里插入图片描述
启动相关项目:把链路追踪日志写入到es:(查看 演示zipkin 篇)
在这里插入图片描述
在这里插入图片描述
#查看zipkin开头索引的生命周期策略:
GET zipkin*/_ilm/explain
在这里插入图片描述
#也可以在es中搜索到:
在这里插入图片描述
#经过一分钟后: 没有了(删除了)
在这里插入图片描述

#演示成功!最后把过期时间重新改成7d

PUT _ilm/policy/auto_delete_policy
{"policy": {"phases": {"delete": {"min_age": "1m","actions": {"delete": {}}}}}
}

#生命周期策略默认10分钟检测一次

PUT /_cluster/settings
{"transient": {"indices.lifecycle.poll_interval”:”10m”}
}

在这里插入图片描述
通过kibana操作:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
查看索引汇总:
在这里插入图片描述

在这里插入图片描述
自动给索引添加删除策略
因为索引是按照日期生成的,所以自动给它加上删除策略
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

http://www.lryc.cn/news/400936.html

相关文章:

  • Vant Ui 最新访问地址
  • 【学习笔记】无人机(UAV)在3GPP系统中的增强支持(八)-通过无人机进行无线接入
  • PTrade量化交易终端常见问题11
  • 被动的机器人非线性MPC控制
  • 什么样的服务器是合乎直销网站标准
  • python 语法学习 day13
  • Spring MVC中Restful风格引入
  • C# Winform 系统方案目录的管理开发
  • 算法-二叉树常见问题详解
  • 【流媒体】 通过ffmpeg硬解码拉流RTSP并播放
  • Go语言指针及不支持语法汇总
  • Why can‘t I access GPT-4 models via API, although GPT-3.5 models work?
  • MATLAB中Simulink.SimulationData.Dataset用法
  • Spring Security学习笔记(一)Spring Security架构原理
  • nginx的access.log日志输出请求数
  • 前端网站(三)-- 记事本【附源码】
  • java——Junit单元测试
  • Scala学习笔记17: Try与异常处理
  • 内网信息收集——MSF信息收集浏览器记录配置文件敏感信息
  • C++ STL中的std::remove_if 的用法详解
  • 基于AT89C51单片机的16×16点阵LED显示器字符滚动显示设计(含文档、源码与proteus仿真,以及系统详细介绍)
  • Docker 日志丢失 - 解决方案
  • 物联网环境下机器人隐私保护法律框架研究-隐私保护法律监管平台
  • 设计模式-创建型模式之工厂方法模式
  • 婚礼成本与筹备策略:一场梦幻婚礼的理性规划
  • 前端a-tree遇到的问题
  • SpringCloud教程 | 第十篇: 读取Nacos的配置
  • 漏洞-Alibaba Nacos derby 远程代码执行漏洞
  • SpringBoot解决Apache Tomcat输入验证错误漏洞
  • echarts解决数据差异过大的问题