千家信息网

shell脚本怎样实现定时监控http服务的运行状态

发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,这篇文章主要为大家展示了"shell脚本怎样实现定时监控http服务的运行状态",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"shell脚本怎样实现定时监控
千家信息网最后更新 2025年12月01日shell脚本怎样实现定时监控http服务的运行状态

这篇文章主要为大家展示了"shell脚本怎样实现定时监控http服务的运行状态",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"shell脚本怎样实现定时监控http服务的运行状态"这篇文章吧。

注意:监控方法可以为端口、进程、URL模拟访问方式,或者三种方法综合。

说明:由于截止到目前仅讲了if语句,因此,就请大家用if语句来实现。

  [root@oldboy-B scripts]# cat apachemon  #!/bin/sh  #created by oldboy 20110523  . /etc/init.d/functions  HTTPPRONUM=`ps -ef|grep http|grep -v grep|wc -l`  #if [ $HTTPPRONUM -lt 1 ];then  if [[ $HTTPPRONUM -lt 1 ]];then  action "httpd is not running" /bin/false  action "httpd is not running" /bin/false >/tmp/httpd.log  httpdctl restart >/dev/null 2>&1  action "httpd is restart" /bin/true  mail -s "`uname -n`'s httpd restarted at `(date)`" 31333741@qq.com  exit 1  else  action "httpd is running" /bin/true  exit 0  fi
  [root@oldboy-B scripts]# apachemon  httpd is running [确定]  [root@oldboy-B scripts]# pkill httpd  [root@oldboy-B scripts]# ps -ef |grep http |grep -v grep  [root@oldboy-B scripts]# apachemon  httpd is not running [失败]  httpd is restart [确定]  [root@oldboy-B scripts]# ps -ef|grep http|grep -v grep  root 5845 1 1 15:59 ? 00:00:00 /usr/sbin/httpd -k restart  apache 5852 5845 0 15:59 ? 00:00:00 /usr/sbin/httpd -k restart  apache 5853 5845 0 15:59 ? 00:00:00 /usr/sbin/httpd -k restart  apache 5854 5845 0 15:59 ? 00:00:00 /usr/sbin/httpd -k restart  apache 5855 5845 0 15:59 ? 00:00:00 /usr/sbin/httpd -k restart  apache 5856 5845 0 15:59 ? 00:00:00 /usr/sbin/httpd -k restart  apache 5857 5845 0 15:59 ? 00:00:00 /usr/sbin/httpd -k restart  apache 5858 5845 0 15:59 ? 00:00:00 /usr/sbin/httpd -k restart  apache 5859 5845 0 15:59 ? 00:00:00 /usr/sbin/httpd -k restart

脚本 改进

  [root@oldboy-B /]# echo oldboytest >/var/www/html/index.htm  [root@oldboy-B /]# wget -quiet -spider http://10.0.0.161/index.htm  [root@oldboy-B /]# echo $?  0  [root@oldboy-B /]# ll index.htm  ls: index.htm: 没有那个文件或目录
  [root@oldboy-B scripts]# cat apachemon1  #!/bin/sh  #created by oldboy 20110523    . /etc/init.d/functions  #HTTPPRONUM=`ps -ef|grep http|grep -v grep|wc -l` #=====>这个是基于http方式进行判断  wget -quiet -spider http://10.0.0.161/index.htm #=====>这个是基于WGET URL方式进行判断  if [ $? -ne 0 ];then  action "httpd is not running" /bin/false >/tmp/httpd.log  httpdctl restart >/dev/null 2>&1  action "httpd is restart" /bin/true >>/tmp/httpd.log  mail -s "`uname -n`'s httpd restarted at `(date)`" mail@qq.com  exit 1  else  action "httpd is running" /bin/true  exit 0  fi

真正使用时,有些输出是不需要的就去掉

  [root@oldboy-B scripts]# cat apachemon1  #!/bin/sh  #created by oldboy 20110523  #  . /etc/init.d/functions  wget -quiet -spider http://10.0.0.161/index.htm #=====>这个是基于WGET URL方式进行判断  if [ $? -ne 0 ];then  action "httpd is not running" /bin/false >/tmp/httpd.log  httpdctl restart >/dev/null 2>&1  action "httpd is restart" /bin/true >>/tmp/httpd.log  mail -s "`uname -n`'s httpd restarted at `(date)`" 31333741@qq.com  exit 1  fi

多条件判断的写法

  [root@oldboy-B scripts]# cat apachemon1  #!/bin/sh  #created by oldboy 20110523  #  . /etc/init.d/functions  HTTPPORTNUM=`netstat -lnt|grep 80|grep -v grep|wc -l`  HTTPPRONUM=`ps -ef|grep http|grep -v grep|wc -l`  wget -quiet -spider http://10.0.0.161/index.htm && RETVAL=$?  if [ $RETVAL -ne 0 ] || [ $HTTPPORTNUM -ne 1 ] || [ $HTTPPRONUM -lt 1 ] ;then  #if [ "$RETVAL" != "0" -o "$HTTPPORTNUM" != "1" -o "$HTTPPRONUM" \< "1" ] ;then  action "httpd is not running" /bin/false  action "httpd is not running" /bin/false >/tmp/httpd.log  httpdctl restart >/dev/null 2>&1  action "httpd is restart" /bin/true  mail -s "`uname -n`'s httpd restarted at `(date)`" 31333741@qq.com  exit 1  else  action "httpd is running" /bin/true  exit 0  fi

以上是"shell脚本怎样实现定时监控http服务的运行状态"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

脚本 监控 方式 状态 服务 运行 内容 篇文章 方法 语句 学习 帮助 写法 家用 文件 易懂 更多 条件 条理 目录 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 属于国内专业学术数据库的是 网络安全法六一实施 域控服务器有本地账户吗 新华三pc服务器贴牌 网络安全监岗工作汇报 数据库的关系模式1nf 网络安全课程大全 重庆应用软件开发大概要多少钱 中南大学数据库论文 excel表格怎么录入数据库 JAVA框架部署到服务器 网络运营者应当按照网络安全事件 嵌入式软件开发特点 江苏hpe塑合型服务器价格 浦江县悦速达网络技术有限公司 2020网络安全法答案 送货单管理软件开发 长寿区电话网络技术服务包括什么 原神手机几个服务器 数据库应用技术章节答案 负责网络安全关键部门 本地服务器网站链接 浪子回头音译软件开发 双u服务器温度压不住 热门云服务器招商加盟平台 轻量应用服务器可做数据库服务器 天津网络技术咨询口碑推荐 数据库技术表怎么换行 人员分管理 技术 服务器 天天板板网网络安全手抄报
0