Zabbix ---- 轮询日志监控
Zabbix日志监控Item介绍
- log[file,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>]
参数介绍:
file: 要监控的日志文件名称,绝对路径;
<regexp>: 被监控日志中内容的正则表达式匹配;
<encoding>: 编码,默认就可(utf-8);
<maxlines>: 一次发送给proxy or server的最大行数;
<mode>: all(default,所有内容检查),skip(跳过老数据检查);
<output>: 输出模式模板,可返回regexp匹配到的内容;
<maxdelay>: 最大延迟秒数; - logrt[file_regexp,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>,<options>]
参数介绍:
file_regexp: 要监控的日志文件名(可用正则表达式匹配文件名),绝对路径;
options: 轮换(默认),copytruncate,此参数不能与maxdelay一起使用;
需求说明
因要求保证服务可用性,防止程序假死,要监控服务日志文件在一定时间内是否继续写入,当没有写入时要报警提示运维人员;
环境介绍
- 系统:Centos6
- Zabbix版本:5.0
配置流程
- 登录至被监控服务器优先使用正则表达式找到服务的轮询日志;
~]# ll /app/test/tomcat*.log
- Zabbix网页端配置
-
创建监控项
名称:见名知意
类型:Zabbix客户端(主动式) 日志相关监控要用主动式
键值:logrt["/app/test/tomcat*.log",,,100,skip,,,copytruncate] 如果需求跟我相同,建议使用此格式写,亲测可用;
信息类型:日志
更新间隔:30s -
创建触发器
名称:见名知意
严重性:按实际需求来
表达式:{test01:logrt["/app/test/tomcat*.log",,,100,skip,,,copytruncate].nodata(60s)}=1 要选择表达式里的nodata哦(最短时长为30s,这里设置的60s没有数据则告警)
验证
搜索被监控服务器查看最新数据中的日志监控项,查看是否有新数据写入,如果没有,可以重启下被监控服务器的zabbix_agent或者reload下也可以;
The End
本文作者:k-free
本文链接:https://www.cnblogs.com/k-free-bolg/p/14480086.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步