70  
zabbix 批量web url监控
作者: wyasw 于 2020年03月29日 发布在分类 / linux / zabbix 下,并于 2020年03月29日 编辑
zabbix

zabbix 批量web url监控

通过Zabbix批量监控 web url,脚本查看其它博友的,测试完全ok。自定义的key需要一台服务器部署,这边是放在zabbix_server端。

1.1 zabbix server监控脚本如下:

cd /etc/zabbix/scripts/

cat 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 /etc/zabbix/scripts/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 -s -w %{http_code} https://$1

}

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

chmod +x web_site_code_status.sh

注意:如果是监控http https://$1  http://$1即可,这里是监控https

1.2 zabbix_agentd.conf文件添加如下2行:

vim /etc/zabbix/zabbix_agentd.conf

UnsafeUserParameters=1

UserParameter=web.site.discovery,/etc/zabbix/scripts/web_site_code_status.sh web_site_discovery

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

脚本调用的web url文件,竖列写:

vim /etc/zabbix/scripts/WEB.txt

www.baidu.com

重启zabbix_agentd服务:

/etc/init.d/zabbix_agentd restart

通过zabbix_get去获取自定义的key

/usr/local/zabbix/bin/zabbix_get -p 10050 -s 127.0.0.1 -k web.site.discovery

{

"data":[

{

"{#SITENAME}":"www.baidu.com"}]}

/usr/local/zabbix/bin/zabbix_get -p 10050 -s 127.0.0.1  -k web.site.code[www.baidu.com]

200

1.3 zabbix web具体的操作过程如下:

创建发现规则:

配置-主机-自动发现规则-创建发现规则


过滤器配置:

监控项原型:

配置-主机-zabbix-server-监控项原型-创建监控项原型

#注意自定义的键值只能手动输入,不能选择


触发器:

配置-主机-zabbix-server-触发器类型-创建触发器原型



注意:{#SITENAME} 大括号里面有个#


##注意有个问题:

在WEB.txt中删除url,被删除的url并没有在zabbix中被删除还是会报警,百思不得其解,最后通过先删除WEB.txt中的网址加zabbix数据库中items表中相应的key数据。问题得以解决




 推荐知识

 历史版本

修改日期 修改人 备注
2020-03-29 15:15:58[当前版本] wyasw 创建版本

 附件

附件类型

JPGJPG

文艺知识分享平台 - 4.3.0 - 文艺范儿