首页 > 代码库 > Zabbix监控(十五):自动批量监控WEB页面

Zabbix监控(十五):自动批量监控WEB页面

参考官方文档:

https://www.zabbix.com/documentation/2.0/manual/discovery/low_level_discovery

参考自动监控Linux端口文档:

http://ywzhou.blog.51cto.com/2785388/1580160


说明:本节将使用脚本形式批量监控WEB页面,再多的URL都可以写在weblist文件中进行自动监控;由于监控网页不需要依赖某台监控主机,因此直接在Zabbix Server上配置即可。


1、新建脚本文件

[root@zabbix ~]# cd /usr/local/zabbix/sbin
[root@zabbix sbin]# vi discoverwebsite.sh
#!/bin/bash    
WEB_SITE=($(cat /usr/local/zabbix/sbin/weblist.txt | grep -v "^#"))    
length=${#WEB_SITE[@]}    
printf ‘{\n‘
    printf ‘\t‘"\"data\":["
    for((i=0;i<$length;i++))    
do
     printf ‘\n\t\t{‘
     printf "\"{#SITE_NAME}\":\"${WEB_SITE[$i]}\"}"
     if [ $i -lt $[$length-1] ];then
           printf ‘,‘
     fi
done
printf  "\n\t]\n"
printf "}\n"


2、新建weblist.txt

[root@zabbix sbin]# vi weblist.txt
http://10.188.1.103/zabbix/dashboard.php 
http://www.baidu.com 
http://mail.qq.com

    有多少URL都可以写在这里,注意要加上协议头http://

    weblist.txt文件的存放路径必须和脚本中参数WEB_SITE内指定的路径一致。


3、增加website的key

[root@zabbix sbin]# cd ..
[root@zabbix zabbix]# vi etc/zabbix_agentd.conf
UnsafeUserParameters=1
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
[root@zabbix zabbix]# vi etc/zabbix_agentd.conf.d/discoverwebsite.conf
UserParameter=website,/usr/local/zabbix/sbin/discoverwebsite.sh "$1"


4、重启zabbix_agentd服务

[root@zabbix zabbix]# service zabbix_agentd restart

    按第2步修改配置zabbix_agentd.conf需要重启服务,以后可以在/zabbix_agentd.conf.d/目录下添加配置文件,不用重启服务就能生效。


5、测试

[root@zabbix sbin]# cd sbin
[root@zabbix sbin]# chmod +x discoverwebsite.sh 
[root@zabbix sbin]# ./discoverwebsite.sh 
{
     "data":[
         {"{#SITE_NAME}":"http://10.188.1.103/zabbix/dashboard.php"},
         {"{#SITE_NAME}":"http://www.baidu.com"},
         {"{#SITE_NAME}":"http://mail.qq.com"}
     ]
}


6、在Linux模板中创建端口自动发现规则


7、查看自动发现结果

本文出自 “月晴星飞” 博客,请务必保留此出处http://ywzhou.blog.51cto.com/2785388/1580965

Zabbix监控(十五):自动批量监控WEB页面