有些时候需要监控服务器上一些特定的指标,但是zabbix中自带的监控项无法监控到,那我们就需要自己创建监控项来达到监控的目的。
这里以监控内存信息为例,虽然有模板,但是我们用这个内存来举例。
一、创建自定义监控项键值
监控数据都是来自客户端agent,那我们需要在agent上获取键值。
在agent配置文件中做以下操作。
1、在配置文件目录中添加一个以.conf的文件,这个文件就是存放监控项键值的位置。
2、在.conf文件中添加键值,有固定写法。如:
3、保存.conf文件,重启agent
mem_info.conf内容:
[root@Rshine zabbix_agentd]# cat mem_info.conf
UserParameter=memory.info[*], cat /proc/meminfo |awk '/^$1/{print $$2}'
# memory.info[*] : 是key值,也就是创建监控项时要添加的键值,[*]:*是可选字段,通过这个字段去灵活的获取键值,相当于是一个自选变量,和自带键值net.tcp.listen[port]类似。
# cat /proc/meminfo |awk '/^$1/{print $$2}' : 是一条命令,目的是为了获取内存信息中的某个值,如MemTotal。$1:表示前面keyname中的*,$$2是awk的第二列。
二、创建监控项
通过自定义的监控项键值来创建监控项,达到监控一项指标的目的。
可以监控到我们想要的监控数据,并生成图形。