zabbix监控URL是否正常

Posted hbyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix监控URL是否正常相关的知识,希望对你有一定的参考价值。

wget命令

技术分享图片

[[email protected] ~]# wget --spider -T 5 -q -t 2 www.jd.com

[root@oldboy ~]# echo $? #<==利用返回值确定网站是否正常。
0

curl命令

技术分享图片

1、利用curl命令返回值确定网站是否正常

[[email protected] ~]# curl -s -o /dev/null www.xxxx.com

[root@zabbix ~]# echo $?

0

2、获取命令执行后的状态码(200表示正常)

[[email protected] ~]# curl -I -m 5 -s -w "%{http_code}
" -o /dev/null  www.baidu.com

200

方法一:wget

#!/bin/sh
function usage() {     #<==帮助函数
    echo $"usage:$0 url"
    exit 1
}
function check_url() { #<==检测URL函数。
    wget --spider -q -o /dev/null --tries=1 -T 5 $1 
   #<==采用wget返回值方法,这里的$1就是函数传参。
    #curl -s -o /dev/null $1 #<==采用curl返回值方法也是可以的。
    if [ $? -eq 0 ]
    then
        echo "$1 is yes."
        exit 0
    else
        echo "$1 is fail."
        exit 1
    fi
}
function main() {   #<==主函数。
     if [ $# -ne 1 ]   #<==如果传入的多个参数,则打印帮助函数,提示用户。
     then
         usage
     fi
     check_url $1     #<==接收函数的传参,即把结尾的$*传到这里。
}
main $*            #<==这里的$*就是

测试

[[email protected] ~]# sh checkurl.sh www.jd.com

www.jd.com is ok

[root@oldboy ~]# sh checkurl.sh www.baidu.com

www.baidu.com is ok

[root@oldboy ~]# sh checkurl.sh 10.0.0.8

10.0.0.8 is fail

方法二:curl

[[email protected] ~]# cat checkurl1.sh 
#!/bin/bash
usage(){
    echo "Usage:$0 url"
    exit 1
}
checkurl(){
    local num=`curl -I -m 5 -s -w "%{http_code}
" -o /dev/null|grep 200|wc -l`
    if [ $num -eq 1 ] #<==采用获取状态码,并转为数字的方式判断,如果301认为正确也可以加上egrep过滤。
    then
        echo "$1 is ok"
    else
        echo "$1 is fail"
    fi
}
main(){
    if [ $# -ne 1 ]
    then
        usage
    fi
    checkurl $1
}
main $*

测试

[[email protected] ~]# sh checkurl.sh www.jd.com

www.jd.com is ok

[root@oldboy ~]# sh checkurl.sh www.baidu.com

www.baidu.com is ok

[root@oldboy ~]# sh checkurl.sh 10.0.0.8

10.0.0.8 is fail

文章来源:https://mp.weixin.qq.com/s?__biz=MzAxOTE5NjQwOA==&mid=2650114763&idx=1&sn=4628f1b5080ae882f5672d39b39518ec&chksm=83cb9a5cb4bc134ab106b0d07a6cbb88ca2ae23d4c6e14325cf4564a0df66e6256dd96c0d557&mpshare=1&scene=23&srcid=0702cR1hmz7WwthkWMTRHVPX#rd

以上是关于zabbix监控URL是否正常的主要内容,如果未能解决你的问题,请参考以下文章

zabbix监控WEB端项目(接口访问)

zabbix-3.2.6之自定制监控项参数 监控http 80端口是否正常

zabbix监测web站点以及用户是否能正常登陆

zabbix 的web监控是由zabbix server发起的请求,所以请求localst:业务端口

Zabbix 3.2.6 自定义端口监控(Oracle)

Zabbix全网监控