Zabbix监控日志的方法

Zabbix 简介

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

创新互联公司专注于中大型企业的成都做网站、成都网站制作和网站改版、网站营销服务,追求商业策划与数据分析、创意艺术与技术开发的融合,累计客户上千余家,服务满意度达97%。帮助广大客户顺利对接上互联网浪潮,准确优选出符合自己需要的互联网运用,我们将一直专注品牌网站制作和互联网程序开发,在前进的路上,与客户一起成长!

zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

zabbix由2部分构成,zabbix server与可选组件zabbix agent。

zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

Zabbix优点:

1 支持分布式监控

2 自带绘图功能,获取到数值型的数据,可自动生成图

3 Web配置方式,操作易用性较好。添加监控项或机器时速度很快。

4 有报警时无论在任何界面会弹出小窗口报警,同时有报警的声音提示,同时可对监控项的快速查看。

5 自带内置函数较为丰富,同时也支持脚本及nagios等脚本的调用。

6 出现问题时,可自动远程执行命令(需对agent设置执行权限)

Zabbix 缺点:

1 批量修改不方便,可用数据库辅助

2 深入后,中文资料相当少,大部分问题需看官方的文档及论坛。

3 缺少数据汇总功能,如无法查看一组服务器平均值,可考虑对其进行二次开发。

4 zabbix较cacti来说,画图功能较差些、流量获取较为复杂。

示例一:

监控项目

键值设置:

log[/data/canal/logs/job-xxx-xxx/job-xxx-xxx.log,"caused|Exception|DRROR",,,skip,,]

yyyy-MM-dd hh:mm:SS

这个键值里边的内容为,日志绝对路径,关键字,skip是跳过老内容,只监控新产生的日志, 其他的不写的用","隔开

触发器:

问题表达式:{aws-bigdata-canal-49-63:log[ /data/canal/logs/job-xxx-xxx/job-xxx-xxx.log,"caused|Exception|DRROR",,,skip,,].nodata(10s)}=0
恢复表达式:{aws-bigdata-canal-49-63:log[ /data/canal/logs/job-xxx-xxx/job-xxx-xxx.log,"caused|Exception|DRROR",,,skip,,].nodata(2m)}=1

nodata(2m) 这个函数是在2分钟内没有数据 1:true 0:false 。 所以获取到关键字 "caused|Exception|DRROR" nodata函数值就会变成false,就会触发 触发器,达到监控的目的!
Zabbix监控日志的方法
Zabbix监控日志的方法
Zabbix监控日志的方法

##示例二:
  通常我们监控会监控到一些关键字就直接报错,但是往往有需求关键字和一些字符串组合起来是没有问题的 即使是存在关键字error exception 等等 这个时候就需要我们使用强大的正则

监控项目:

  log[/var/log/test_file.log,"Error|(?

这里重点讲解(?

(?:pattern) 非获取匹配,匹配pattern但不获取匹配结果,不进行存储供以后使用。这在使用或字符“(|)”来组合一个模式的各个部分是很有用。例如“industr(?:y|ies)”就是一个比“industry|industries”更简略的表达式。 

(?=pattern) 非获取匹配,正向肯定预查,在任何匹配pattern的字符串开始处匹配查找字符串,该匹配不需要获取供以后使用。例如,“Windows(?=95|98|NT|2000)”能匹配“Windows2000”中的“Windows”,但不能匹配“Windows3.1”中的“Windows”。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。 (?!pattern) 非获取匹配,正向否定预查,在任何不匹配pattern的字符串开始处匹配查找字符串,该匹配不需要获取供以后使用。例如“Windows(?!95|98|NT|2000)”能匹配“Windows3.1”中的“Windows”,但不能匹配“Windows2000”中的“Windows”。

(?<=pattern) 非获取匹配,反向肯定预查,与正向肯定预查类似,只是方向相反。例如,“(?<=95|98|NT|2000)Windows”能匹配“2000Windows”中的“Windows”,但不能匹配“3.1Windows”中的“Windows”。 

(?


文章标题:Zabbix监控日志的方法
文章出自:http://azwzsj.com/article/pijpde.html