为了账号安全,请及时绑定邮箱和手机立即绑定

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

标签:
Linux


#使用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

©著作权归作者所有:来自51CTO博客作者丁丁历险的原创作品,如需转载,请注明出处,否则将追究法律责任

脚本shellhttpLinux系统


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消