Shell脚本自动检测HTTP状态

作者: 大白菜的猪猪 | 来源:发表于2019-11-25 09:12 被阅读0次

    编程需求说明:


    监控web服务器运行状态的方式有很多种,最简单的就是监控该服务器是否宕机,客户端是否无法访问.Ping的方式检测虽然可以完成此需求,但是却无法检测到web服务器上对应的服务是否开启或关闭.

    所以使用Nmap工具就可以解决此问题,它是一个网络探测及端口监测的工具,不但可以扫描到端口是否打开,还可以监测主机是否存活.


    源代码:


    #!/bin/bash

    #功能描述:使用namp的端口扫描功能监控HTTP端口

    #http服务器地址

    ip=127.0.0.1

    #邮件报警账户

    mail_to=root@localhost

    nmap -n -sS -p80 127.0.0.11 | grep -q "^80/tcp open"

    if [ $? -eq 0 ];then

            #给管理员发送邮件汇报状态

            echo "$ip 上的HTTP服务正在运行" | mail -s http_status_ok $mail_to

    else

            echo "$ip 上的HTTP服务状态异常,请及时处理" | mail -s http_status_error $mail_to

    fi


    脚本运行结果

    状态正常情况下

    /check_http_nmap.sh

    您在 /var/spool/mail/root 中有新邮件

    127.0.0.1 上的HTTP服务正在运行


    状态异常情况下

    关闭httpd,模拟状态异常
    systemctl stop httpd

    /check_http_nmap.sh

    127.0.0.1 上的HTTP服务状态异常,请及时处理

    相关文章

      网友评论

        本文标题:Shell脚本自动检测HTTP状态

        本文链接:https://www.haomeiwen.com/subject/vpcdwctx.html