第4章 自定义监控项
1.自定义监控项语法
UserParameter=监控项名称,取值命令或脚本
2.自定义监控项
第一步:理解需求
监控有多少个用户正在同时登陆
第二步:收集正确的命令并验证
who|wc -l
第三步:编写自定义监控项配置文件
[root@web-7 ~]# cat /etc/zabbix/zabbix_agent2.d/user_login.conf
UserParameter=user_login,who|wc -l
第四步:重启Agent2客户端
[root@web-7 ~]# systemctl restart zabbix-agent2.service
第五步:在 zabbix-server命令行界面使用命令测试能否正确获得监控项的值
[root@m-61 ~]# yum install zabbix-get -y
[root@m-61 ~]# zabbix_get -s 10.0.0.7 -k user_login
2
第六步:在zabbix web页面添加监控项
监控TCP连接状态:
第一步:理解需求
服务器上TCP的不同连接状态的数量
第二步:收集正确的命令并验证
[root@web-7 ~]# netstat -antp|grep "TIME_WAIT"|wc -l
45
[root@web-7 ~]# netstat -antp|grep "LISTEN"|wc -l
5
[root@web-7 ~]# netstat -antp|grep "ESTABLISHED"|wc -l
2
第三步:编写自定义监控项配置文件
[root@web-7 ~]# cat /etc/zabbix/zabbix_agent2.d/tcp_status.conf
UserParameter=TCP_TIME_WAIT,netstat -ant|grep "TIME_WAIT"|wc -l
UserParameter=TCP_LISTEN,netstat -ant|grep "LISTEN"|wc -l
UserParameter=TCP_ESTABLISHED,netstat -ant|grep "ESTABLISHED"|wc -l
第四步:重启Agent2客户端
systemctl restart zabbix-agent2.service
第五步:在 zabbix-server命令行界面使用命令测试能否正确获得监控项的值
[root@m-61 ~]# zabbix_get -s 10.0.0.7 -k TCP_LISTEN
5
[root@m-61 ~]# zabbix_get -s 10.0.0.7 -k TCP_TIME_WAIT
41
3.自定义监控项-传参形式
应用场景:
遇到命令相同,只是过滤的值不同,但是监控项数量又很多的情况,适合用传参的形式
传参形式的写法:
[root@web-7 ~]# cat /etc/zabbix/zabbix_agent2.d/tcp_status.conf
UserParameter=TCP_[*],netstat -ant|grep -c "$1"
测试命令:
[root@m-61 ~]# zabbix_get -s 10.0.0.7 -k TCP_[TIME_WAIT]
50
[root@m-61 ~]# zabbix_get -s 10.0.0.7 -k TCP_[LISTEN]
5
web页面操作: