Zabbix中有自带许多的key,但是有时候我们的需求。自带的key无法满足,这时候我们可以自己写脚本,通过自定义key去监控我们想要的值
这里以监控tcp/ip连接数为例
方法就是在agent的配置文件中添加一个参数UserParamter,
格式为
UserParamter=<key>,<command> #没有参数时
UserParamter=<key>[*],<command> #需要加入参数时
其中第二个格式的时候有一点需要注意,如果<command>中需要用$比如,
awk中我们有时候会print $1,这时候如果需要将$1改为$$1。
因为这时候$1就有点类似脚本传参,是key传过来的参数,如果还是使用$就会造成冲突
方法也挺简单,修改配置文件vim /etc/zabbix/zabbix_agentd.conf
UserParameter=tcp_conn[*],ss -ant | awk 'NR>1{print $$1}' | grep $1 |wc -l
#可以用这个例子体会一下$$1 和$1区别,
#这里的$1是key传进来的参数,而$$1则是awk中表示第一个字段的意思
然后重启一下agent
systemctl restart zabbix-agent
测试一下
然后设置监控项