八:web批量监控配置

1.编写插件脚本

cat zone.sh 

#!/bin/bash



a=`cat   /usr/lib/zabbix/externalscripts/WEB.txt`

for i in $a

do

b=`/usr/bin/curl -o /dev/null   -s -w %{http_code} http://$i`

echo $i/$b

done



2.编写脚本

vim web_site_code_status.sh

 #!/bin/bash

 # function:monitor tcp connect status from zabbix

  

 source /etc/bashrc >/dev/null 2>&1

 source /etc/profile  >/dev/null 2>&1

 #/usr/bin/curl -o /dev/null -s -w %{http_code} http://$1/

  

 web_site_discovery () {

 WEB_SITE=($(cat  /usr/lib/zabbix/externalscripts/WEB.txt|grep -v "^#"))

         printf '{\n'

         printf '\t"data":[\n'

 for((i=0;i<${#WEB_SITE[@]};++i))

 {

 num=$(echo $((${#WEB_SITE[@]}-1)))

         if [ "$i" != ${num} ];

                 then

         printf "\t\t{ \n"

         printf "\t\t\t\"{#SITENAME}\":\"${WEB_SITE[$i]}\"},\n"

                 else

                         printf  "\t\t{ \n"

                         printf  "\t\t\t\"{#SITENAME}\":\"${WEB_SITE[$num]}\"}]}\n"

         fi

 }

 }

  

 web_site_code () {

#/usr/bin/curl -o /dev/null  --connect-timeout 10 -s -w %{http_code} http://$1 #确定好http还是https

for n in `cat /usr/lib/zabbix/externalscripts/result.txt`

do


if [ $1 == `echo $n | awk -F '/' '{print $1}'` ];then

echo  `echo $n | awk -F '/' '{print $2}'`


fi

done



 }

  

 case "$1" in

 web_site_discovery)

 web_site_discovery

 ;;

 web_site_code)

 web_site_code $2

 ;;

 *)

  

 echo "Usage:$0 {web_site_discovery|web_site_code [URL]}"

 ;;

 esac

配置WEB.txt

域名:port

Zabbix客户端配置文件加入下列配置

UnsafeUserParameters=1

UserParameter=web.site.discovery,/data/usr/local/zabbix/scripts/web_site_code_status.sh web_site_discovery  

UserParameter=web.site.code[*],/data/usr/local/zabbix/scripts/web_site_code_status.sh web_site_code $1

 

/data/usr/local/zabbix/scripts 为配置脚本的目录

书写启动任务

*/2 * * * * /usr/lib/zabbix/externalscripts/zone.sh  > /usr/lib/zabbix/externalscripts/result.txt


2.配置zabbix网页

zabbix批量监控URL_zabbix批量监控URL 

zabbix批量监控URL_zabbix批量监控URL_02 

 

 

在自动发现里面创建条目

 

zabbix批量监控URL_zabbix批量监控URL_03 

在自动发现里面创建触发器

zabbix批量监控URL_zabbix批量监控URL_04 

创建两条不同触发器

 zabbix批量监控URL_zabbix批量监控URL_05

 

 zabbix批量监控URL_zabbix批量监控URL_06


在自动发现里面创建图形

zabbix批量监控URL_zabbix批量监控URL_07 

3. 验证

 zabbix批量监控URL_zabbix批量监控URL_08