自定义监控首先在配置文件开启监控脚本
#zabbix_agentd.conf
UnsafeUserParameters=1 #是否启用用户自定义监控脚本
Include=/etc/zabbix/zabbix_agentd.d/ #该路径下定义监控
方法一 : 在配置文件zabbix_agentd.conf内配置多个
UserParameter=zabbix_name,hostname
UserParameter=zabbix_ifconfig,ifconfig
方法二 : 在zabbix_agentd.d目录下定义*.conf文件
[root@10_56_80_254 zabbix_agentd.d]# pwd
/etc/zabbix/zabbix_agentd.d #该路径下创建*.conf文件
[root@10_56_80_254 zabbix_agentd.d]# cat test.conf
UserParameter=zabbix_id,id zabbix | awk '{print$2}'
UserParameter=zabbix_name,hostname
UserParameter=zabbix_ifconfig,ifconfig
UserParameter=zabbix_a,/bin/sh /tmp/test/a.sh #获取脚本信息时,刷新间隔时间短会产生无数据
单参数语法 :
UserParameter=<key>,<command>
用户参数示例
简单的命令:
UserParameter=ping,echo 1
UserParameter=mysql.ping,mysqladmin -uroot ping | grep -c alive
例子 : [root@10_56_80_254 ~]# mysqladmin -uroot -proot | grep -c alive
1
多参数语法 :
灵活的用户参数使用Key接受参数。这样一个灵活的用户参数可以作为创建几个监控项的基础。
灵活的用户参数具有以下语法:
UserParameter=key[*],command
参数 | 描述 |
Key | 唯一的监控项Key。[*]定义该Key接收括号内的参数。 在配置监控项时给出参数。 |
Command | 执行命令以评估Key的值。 仅适用于灵活的用户参数: 你可以使用命令中的位置引用$ 1 … $ 9来引用监控项Key中的相应参数。 Zabbix解析监控项Key的[]中包含的参数,并相应地替换$ 1,…,$ 9。 $ 0将由原始命令(在扩展$ 0,…,$ 9之前)替换为运行。 不管它们是用双引号(“)还是单引号(')括起来,都会解析位置引用。 要使用位置引用不变,请指定双美元符号 - 例如,awk'{print $$2}'。 在这种情况下,执行命令时,“$$2”实际上会变成“$2”。 |