文章目录
- 概念
- 操作步骤
- 相关语法
- 灵活的参数设定语法
- 示例:使用自定义参数监控TCP会话中的“Established”的会话数
- 步骤一:编辑zabbix的配置文件(此处以Linux测试)
- 步骤二:配置文件中添加相应的UserParameter
- 步骤三:重启zabbix-agent服务
- 步骤四:使用zabbix-get测试获取相应的值(可选步骤)
- 步骤五:Zabbix web页面添加监控Item
概念
有时你可能需要去自定义一些zabbix agent没有预先设定的监控项,此时“UserParameter”
操作步骤
- 在zabbix agent的配置文件中添加参数
UserParameter=<key>,<command>
- Linux 的配置文件路径:/etc/zabbix/zabbix_agentd.d/
- Windows 配置文件路径:安装目录下找
相关语法
- key :就是用于在zabbixweb端定义的“item”或者叫“监控项”的名称、
- 名称应该简单易记,容易辨认
- 在此主机中必需唯一,不能重复
- command : 是在linux的shell中,或者windows的powershell 中执行的命令,将此命令执行的输出的内容做为key的值。也就是item的value。
- 用户参数是由zabbix agent 执行的一批命令,在item(监控项)处理该数据之前执行的命令的结果最高可储存512KB的数据。
- 注意:文本数据最终在MySQL数据库中最多只能是64KB
- UserParameter 也服从zabbix agent的超时设定,如果超时,用户自定义的参数将会超时。
灵活的参数设定语法
UserParameter=key[*],command
- 此语法可以让一个key,也就是一个item还可以再接受参数,这样可以再次扩展用户的参数设定
- key : 唯一的一个key,[] 用于定义这个key可以接受们于中括号中的参数,可以明确指定,也可以使用“”通配符。
- command : 可以位置引用,使用$1…$9 来代替多个位置的参数。zabbix会解析括号中的参数,$0 用于代替命令本身。
- 简单的说,在zabbix的web界面定义item的时候,可以写上具体的值,然后,在配置文件中使用$1,$2等将这些值替换为web界面中指定的值。可更好的扩展。
示例:使用自定义参数监控TCP会话中的“Established”的会话数
步骤一:编辑zabbix的配置文件(此处以Linux测试)
vim /etc/zabbix/zabbix_agentd.d/userparameter_tcp_established.conf
步骤二:配置文件中添加相应的UserParameter
UserParameter=ESTABLISHED,ss -tna | grep -c ESTAB
步骤三:重启zabbix-agent服务
systemctl restart zabbix-agent
步骤四:使用zabbix-get测试获取相应的值(可选步骤)
zabbix_get -s 127.0.0.1 -k ESTABLISHED
24
步骤五:Zabbix web页面添加监控Item