共计 1938 个字符,预计需要花费 5 分钟才能阅读完成。
下面介绍 zabbix 另一个“重量级”的功能——日志文件监控,它最主要的是监控日志文件中有没有某个字符串的表达式,对应日志轮转与否,zabbix 都支持。
在配置 Item 的时候,Type 选择 Zabbix agent (active),这里主要需要配置的是 Key。下面是监控日志的两种 key——log 和 logtr。
log[/path/to/some/file,<regexp>,<encoding>,<maxlines>,<mode>,<output>]
logtr[/path/to/some/filename_format,<regexp>,<encoding>,<maxlines>,<mode>,<output>]
◆ regexp:要匹配内容的正则表达式,或者直接写你要检索的内容也可以,例如我想检索带 ERROR 关键词的记录
◆ encoding:编码相关,留空即可
◆ maxlines:一次性最多提交多少行,这个参数覆盖配置文件 zabbxi_agentd.conf 中的’MaxLinesPerSecond’,我们也可以留空
◆ mode:默认是 all,也可以是 skip,skip 会跳过老数据
◆ output:输出给 zabbix server 的数据。可以是 \1、\2 一直 \9,\1 表示第一个正则表达式匹配出得内容,\2 表示第二个正则表达式匹配错的内容。
如果仔细看可以发现,第一个参数不一样,logrt 的第一个参数可以使用正则表达式。针对日志回滚用得,例如我们每天都切割 nginx 日志,日志名位 www.a.com_2015-01-01.log、www.a.com_2015-01-02.log 等等,使用 log 肯定不合适,如果文件名使用正则,那么新增的日志文件会立即加入监控。
备注:不管新日志、老日志,只要他们有变更,zabbix 都会监控。
只要配置了 <regexp>,Zabbix 会根据 <regexp> 的正则表达式来匹配日志中的内容。注意,一定要保证 Zabbix 用户对日志文件有可读权限,否则这个 Item 的状态会变成“unsupported”。
1、Zabbix Server 和 Zabbix Agent 会追踪日志文件的大小和最后修改时间,并且分别记录在字节计数器和最新的时间计数器中。
2、Agent 会从上次读取日志的地方开始读取日志。
3、字节计数器和最新时间计数器的数据会被记录在 Zabbix 数据库,并且发送给 Agent,这样能够保证 Agent 从上次停止的地方开始读取日志。
4、当日志文件大小小于字节计数器中的数字时,字节计数器会变为 0,从头开始读取文件。
5、所有符合配置的文件,都会被监控。
6、一个目录下的多个文件如果修改时间相同,会按照字母顺序来读取。
7、到每个 Update interval 的时间时,Agent 会检查一次目录下的文件。
8、Zabbix Agent 每秒发送日志量,有一个日志行数上限,防止网络和 CPU 负载过高,这个数字在 zabbix_agentd.conf 中的 MaxLinePerSecond。
9、在 logtr 中,正则表达式只对文件名有效,对文件目录无效。
请确保 Agent 有如下两项配置
1、Hostname 设定为 Server 创建主机是填写的 Host name,必须一致
2、ServerActive 设定为 Server 的 IP
Host>> 目标主机 >>item>>create item,如下:
说明:
1. type 必须选择 zabbix agent(active),因为数据是 zabbix 被监控的主动提交给 server
2. key:log[/var/log/message,error],我们这里是监控的系统日志,打印出带有 error 的行,大家也可以去监控其他的日志,MySQL、nginx 等等都是可以的。
3. log time format:MMpddphh:mm:ss,对应日志的行头 Sep 14 07:32:38,y 表示年、M 表示月、d 表示日、p 和: 一个占位符,h 表示小时,m 表示分钟,s 表示秒。
切换到最新日志里面,找到相应数据,如下是我的监控截图:
我们可以针对监控到的一些信息设置触发器,进行报警等等,这里不再介绍。
马哥教育精英线下 Linux 班郑州校区开班倒计时,优惠四重享,赠送高达 4000 元的学习大礼包:
第一重:4 月 30 日前报名,立减 400 元,名额有限抢完为止;
第二重:4 月 30 日前报名,赠送马哥教育内部 Linux 知识精讲教材一本( 价值 666 元 );
第三重:4 月 30 日前报名,赠送马哥教育实体服务器使用资格( 价值 1666 元 );
第四重:4 月 30 日前报名,赠送马哥教育云学堂学习权限 1 个( 价值 1999 元 );