zabbix(9)iterms(监控项)
一、iterms key
监控项按参数来分有两种:带参数和不带参
按定义来分:zabbix自带和用户自定义
1)Key可以带参数,该参数为一个数组列表,可以同时传递多个参数,Key的格式如下:
既Key的格式为Key或者Key[参数],例如:
不带参数:system.uname
带参数:vfs.fs.size[/data]
而Key的参数可以分为如下三类:
a、引号字符串
b、非引号字符串
c、数组
> 引号字符串参数:
如果参数是引号字符串,那么引号里面可以是任意的字符串,但如果存在双引号,该双引号必须使用反斜杠(\)进行转义,如:
>非引号字符串参数:
除逗号、右方括号以外的其他字符都能引用,如下:
>数组:
如果Key的参数是一个数组,用逗号将各参赛隔开
2)Key的名称定义注意事项
Key名称的取值范围如下:
a、所有的数字(0~9);
b、所有的大小写字母(a~z,A~Z);
c、下划线(_);
d、破折号(——);
e、点号(.)
3)Key参数应用实例:
UserParameter=wc[*],grep -c "$2" $1
wc[*] 代表Key 后面的GREP -C "$2" $1 代表命令
该语句把wc接受到的参数传递给后面的command
4)用户自定义参数
用户自定义参数(UserpParameter)仅支持agent方式
(1)语法如下:
在/etc/zabbix/zabbix_agentd.conf中配置参数,如下:
UserParameter=key,command 或者参数传递 UserParameter=key[*],command $1 $2
但是一般在自定义Key的时候,都是在/etc/zabbix/zabbix_agentd.d/目录下面创建一个新的配置文件,同时需要在/etc/zabbix/zabbix_agentd.conf里面使用Include 目录方式把该目录导入进去
(2)自定义键时,对特殊字符的处理
如果UserParameter包含 \ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @这些字符,默认情况下,zabbix对这些参数无法处理,需要在zabbix_agentd.conf配置文件中开启UnsafeUserParameters,将其值设置为1,默认为0(关闭),接着重启zabbix客户端。默认情况下,$1,$2,$3代表位置参数1,2,3,4,如果定义的字符串中出现$后面接数字,需要使用$$,列:
awk '{print $$2}
(3)Key返回值
自定义Key可以返回文本(character、log、text)和空值,如果返回一个无效值,则显示 ZBX_NOTSUPPORTED: Unsupported item key