自学Zabbix3.5.5-监控项item-User parameters(自定义key)
点击返回:自学Zabbix之路
为什么要自定义KEY,即User parameters功能
有时候我们想让被监控端执行一个zabbix没有预定义的检测,zabbix的用户自定义参数功能提供了这个方法。我们可以在客户端配置文件zabbix_angentd.conf里面配置UserParameter.
语法如下:
1 | UserParameter=key,command |
用户自定义参数包含一个key和一个命令,key必须整个系统唯一,配置好之后,重启客户端。
然后配置item,在key的位置填上我们自定义的key即可。
用户自定义参数里指定的脚本由zabbix agent来执行,最大可以返回512KB的数据.
用户自定义key实例
简单点的命令示例:
UserParameter=ping,echo 1
如果调用ping这个key,将会收到返回值1.
更复杂的命令示例:
UserParameter=mysql.ping,mysqladmin -uroot ping|grep -c alive
如果返回1表示MySQL运行中,如果返回0表示MySQL挂了
灵活的自定义key:
如下为灵活的用户自定义参数
1 | UserParameter=key[*],comman |
参数 | 描述 |
Key | 唯一. [*]表示里面可以传递多个参数 |
Command | 需要执行的脚本,key的[]里面的参数一一对应$1到$9,一共9个参数。$0表示脚本命令. |
注意事项
1. 如果需要使用命令行里面出现$2这种变量,那么你要使用两个$$2,例如awk ’{ print $$2 }’,之前就遇到过这个问题,不停的测试自己脚本输出正常,但是zabbix却拿不到数据,原来是出在这里。为了防止和参数冲突,所以zabbix做了这个规定。
2. zabbix禁止使用一些不安全的参数,如下:
\ ' ” ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
3. 从zabbix 2.0开始,zabbix返回文本数据可以是空格。
示例1
UserParameter=ping[*],echo $1
ping[0] - 将一直返回0
ping[aaa] - 将一直返回 'aaa'
示例2
UserParameter=mysql.ping[*],mysqladmin -u$1 -p$2 ping | grep -c alive
如下参数用于监控MYSQL,并且可以传递用户名和密码。
mysql.ping[zabbix,our_password]
示例3
统计一个文件中有多少行被匹配?
UserParameter=wc[*],grep -c "$2" $1
如下方法将会返回文件中出现指定字符的行数
wc[/etc/passwd,root]
wc[/etc/services,zabbix]
- 自学Zabbix3.5.1-监控项item-key介绍
- 自学Zabbix3.5.3-监控项item-zabbix agent 类型所有key
- 服务器监控系统Zabbix的自定义key、discovery、web监控图解教程(第四章)
- ZABBIX自定义用户KEY与参数USERPARAMETERS监控脚本输出
- zabbix自定义key监控mysql重要参数的运行情况
- 自学Zabbix3.5-监控项item
- zabbix专题:第九章 自定义key(案例:监控内存,监控nginx状态)
- zabbix------自定义key监控windows SQL Server
- Zabbix添加主机监控及自定义item监控
- zabbix监控nginx和fpm(网站并发数)自定义key
- zabbix使用自定义key进行监控
- zabbix开源监控系列三(自定义key监控nginx_status) 推荐
- zabbix自定义item监控项
- zabbix 自定义key 监控 网站关键字
- zabbix自定义key监控mysql
- 自学Zabbix3.5.7-监控项item-Applications
- zabbix用户自定义key检测内存信息和监控nginx的状态页
- 自学Zabbix3.5.4-监控项item-History and trends
- zabbix 通过自定义key完成网卡监控