首页 > 系统服务 > 详细

shell 4

时间:2020-06-20 22:38:29      阅读:90      评论:0      收藏:0      [点我收藏+]
监控nginx 脚本,每20秒监测一次,如果进程数多于1000,重启nginx服务,重启5次失败后通知管理员,如果重启成功一分种后,进程数还是大于1000,通知运维

#!/bin/bash
d=`date`
c=`pgrep -l nginx | wc -l`
check_nginx()
{
  for  ((i=1;i<=5;i++))
  do
        /usr/local/nginx/sbin/nginx   2> /tmp/nginx.log
        if [ $? -eq 0 ]
        then
                echo "${d}nginx 重启${i}次成功" | mail -s "nginx 进程监控" 383xxxxx@qq.com
                break
        fi
  done
}
while :
do
        if [ c -gt 1000 ]
        then
                check_nginx
                if [ $i -eq 5 ]
                then
                        echo "${d}nginx 5次重启失败,请登录服务器处理" | mail  -s "nginx 进程监控" 383xxxxxx@qq.com
                        exit
                else
                        sleep 60
                        c1=`pgrep -l nginx | wc -l`
                        if [ c1 -gt 1000 ]
                        then
                                echo "${d}nginx重启后进行仍大于1000,请登录服务器处理" | mail -s "nginx 进程监控" 383xxxxx@qq.com
                                exit
                        fi
                fi
        fi
        sleep 20
done

shell 4

原文:https://blog.51cto.com/13667909/2506182

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!