当前位置 : 主页 > 操作系统 > centos >

shell脚本:监控HTTP服务的状态(测试返回码)

来源:互联网 收集:自由互联 发布时间:2022-06-20
#定义函数check_http: #使用curl命令检查http服务器的状态#-m设置curl不管访问成功或失败,最大消耗的时间为5秒,5秒连接服务为相应则视为无法连接 #-s设置静默连接,不显示连接时的连接

#定义函数check_http: 

#使用curl命令检查http服务器的状态 #-m设置curl不管访问成功或失败,最大消耗的时间为5秒,5秒连接服务为相应则视为无法连接

#-s设置静默连接,不显示连接时的连接速度、时间消耗等信息 

#-o将curl下载的页面内容导出到/dev/null(默认会在屏幕显示页面内容) 

#-w设置curl命令需要显示的内容%{http_code},指定curl返回服务器的状态码


#!/bin/bash #Author:丁丁历险(Jacob) #设置变量,url为你需要检测的目标网站的网址(IP或域名) url=http://192.168.4.5/index.html   #定义函数check_http: #使用curl命令检查http服务器的状态 #-m设置curl不管访问成功或失败,最大消耗的时间为5秒,5秒连接服务为相应则视为无法连接 #-s设置静默连接,不显示连接时的连接速度、时间消耗等信息 #-o将curl下载的页面内容导出到/dev/null(默认会在屏幕显示页面内容) #-w设置curl命令需要显示的内容%{http_code},指定curl返回服务器的状态码 check_http(){ status_code=$(curl -m 5 -s-o /dev/null -w %{http_code} $url) }   while : do        check_http        date=$(date +%Y%m%d-%H:%M:%S)  #生成报警邮件的内容        echo "当前时间为:$date        $url服务器异常,状态码为${status_code}.        请尽快排查异常." > /tmp/http$$.pid         #指定测试服务器状态的函数,并根据返回码决定是发送邮件报警还是将正常信息写入日志        if [ $status_code -ne 200 ];then               mail -s Warning root < /tmp/http$$.pid        else               echo "$url连接正常" >> /var/log/http.log        fi        sleep 5 done



【本文来源:韩国服务器 http://www.558idc.com/kt.html欢迎留下您的宝贵建议】
上一篇:Oracle备份还原实践
下一篇:没有了
网友评论