首页 > 系统相关 >监控 HTTP 服务器的状态(测试返回码)shell脚本

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

时间:2022-10-10 15:55:33浏览次数:52  
标签:code HTTP url http shell 服务器 curl 连接

#!/bin/bash

# 监控 HTTP 服务器的状态(测试返回码)
 
# 设置变量,url为你需要检测的目标网站的网址(IP 或域名),比如百度
url=http://http://183.232.231.172/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

标签:code,HTTP,url,http,shell,服务器,curl,连接
From: https://www.cnblogs.com/tang-learning/p/16776009.html

相关文章

  • 【学习笔记】HTTP
    HTTP 什么是httpHTTP:超文本传输协议,是一个简单的请求-相应协议超文本:图片、视频、音乐、定位默认端口:80HTTPS:以安全为目标的HTTP通道,在HTTP的基础上加入......
  • nginx启停shell脚本
    #!/bin/bash#编写nginx启动脚本#本脚本编写完成后,放置在/etc/init.d/目录下,就可以被Linux系统自动识别到该脚本#如果本脚本名为/etc/init.d/nginx,则servic......
  • FinalShell - SSH工具
    官网:http://www.hostbuf.com/ Windows版下载地址:http://www.hostbuf.com/downloads/finalshell_install.exe  ......
  • Internet和HTTP协议
    Internet概念Internet:将不同的计算机网络连接起来,实现不同的计算机网络之间的通信Socket套接字socket:允许位于不同主机(或同一主机)上不同进程之间进行通信和数据交换s......
  • 在linux服务器上搭建docker容器
    建立容器并配置环境方案Docker命令大全Docker命令大全|菜鸟教程(runoob.com)LinuxLinux教程|菜鸟教程(runoob.com)Docker镜像从dockerhub下载镜像,这里下......
  • 记一次win10 python -m http.server 启动后无法访问的经历
    前言最近需要在win10上使用python创建一个http文件服务(默认端口8000),结果执行了python3-mhttp.server-b0.0.0.0后,发现服务跑起来了,但浏览器无法访问http://loc......
  • HttpPost 帮助类
    1publicstaticclassClientHelper2{3publicstaticstringHttpPost(stringurl,stringcontent)4{5stringresul......
  • 使用shell脚本上传文件至阿里云OSS(无需装任何sdk)
      #!/bin/bashhost="oss-cn-hangzhou.aliyuncs.com"bucket="bucket"#BucketNameid="id"#AccessKeyIdkey="key"#AccessKeySecretosshost=$bucket.$host......
  • Gitblit服务器搭建-Windows
    1.先搭建JDK环境,参考地址:https://www.cnblogs.com/Bingo1363136101/p/16773023.html。 2.去官网下载最新的压缩包,地址:http://gitblit.com。3.下载后解压到要安装的目......
  • 97、配置yum源仓库服务器
    (服务端(双(外,内)网卡)——客户端(内网))YUM主要用于自动安装、升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系。要成功的使用YUM工具安装更新软件或系统,就需要有......