Linux监控apache脚本

监控apache脚本:

1、每十分钟检查apache是否正常运行

分析:进程在运行如何判断

1)lockfile是否存在

2)pid是在后台存在

3)能否正常访问页面

2、如果apache运行不正常(进程死亡、页面访问也不正常等情况),

需要脚本能够通过重启apache进程来恢复正常。

分析:

1)先恢复后报警

2)如何恢复

3)如何报警

3、当apache故障时能通过邮件及短信报警,当apache故障恢复后能够通知管理员

1)重新检查apache是否正常

2)如果正常发信息告诉管理员已经自动恢复成功

3)如果apache还是不正常,发信息告知管理上线手工修复

bash 复制代码
#!/bin/bash

if [ -f /var/lock/subsys/httpd ]
then
        export pid=`cat /var/run/httpd/httpd.pid`
        ps -p $pid | grep httpd &> /dev/null
        REL1=$?
        elinks -dump http://localhost/ok.html &> /dev/null
        REL2=$?

        if [ 0 -eq $REL1 ] && [ 0 -eq $REL2  ]
        then
                        : 
        else
                        pkill -9 httpd
                        service httpd restart &> /dev/null
                        REL3=$?
                        echo "httpd is not OK" | mail -s "httpd is not ok" root@localhost
                        sleep 3s
 
                        if [ $REL3 -eq 0 ]
                        then
                                echo "httpd is recovered OK" |  mail -s "httpd is recovered ok" root@localhost
                        else
                                echo "httpd is recovered not OK,please login your server and recover by yourself" | mail -s "httpd is recovered not ok" root@localhost
                        fi
        fi
else
                        service httpd start &> /dev/null
                        REL4=$?
                        echo "httpd is not OK" | mail -s "httpd is not ok" root@localhost
 
                        sleep 3s
                        if [ $REL4 -eq 0 ]
                        then
                                echo "httpd is recovered OK" |  mail -s "httpd is recovered ok" root@localhost
                        else
                                echo "httpd is recovered not OK,please login your server and recover by yourself" | mail -s "httpd is recovered not ok" root@localhost
                        fi

fi
bash 复制代码
*/10 * * * * sh httpd.sh
相关推荐
韩楚风1 小时前
【linux 多进程并发】linux进程状态与生命周期各阶段转换,进程状态查看分析,助力高性能优化
linux·服务器·性能优化·架构·gnu
陈苏同学1 小时前
4. 将pycharm本地项目同步到(Linux)服务器上——深度学习·科研实践·从0到1
linux·服务器·ide·人工智能·python·深度学习·pycharm
Ambition_LAO1 小时前
解决:进入 WSL(Windows Subsystem for Linux)以及将 PyCharm 2024 连接到 WSL
linux·pycharm
Pythonliu71 小时前
茴香豆 + Qwen-7B-Chat-Int8
linux·运维·服务器
你疯了抱抱我1 小时前
【RockyLinux 9.4】安装 NVIDIA 驱动,改变分辨率,避坑版本。(CentOS 系列也能用)
linux·运维·centos
追风赶月、1 小时前
【Linux】进程地址空间(初步了解)
linux
栎栎学编程1 小时前
Linux中环境变量
linux
我是哈哈hh1 小时前
专题十_穷举vs暴搜vs深搜vs回溯vs剪枝_二叉树的深度优先搜索_算法专题详细总结
服务器·数据结构·c++·算法·机器学习·深度优先·剪枝
郭二哈2 小时前
C++——模板进阶、继承
java·服务器·c++
挥剑决浮云 -2 小时前
Linux 之 安装软件、GCC编译器、Linux 操作系统基础
linux·服务器·c语言·c++·经验分享·笔记