首页 » Linux » 20道必会shell题目第13题

20道必会shell题目第13题

 

企业面试题13:
1、监控web服务是否正常,不低于3种监控策略。
2、监控db服务是否正常,不低于3种监控策略。
要求间隔1分钟,持续监控。

思路:可以监控进程和端口,可以通过访问去监控,db可以监控端口。考虑到apache和nginx两种服务器。

后台执行时,要把输出定向到空,以下没有是为了方便查看了。
要是失败了,可能会1分钟发一次邮件,个人觉得没有必要,可以发了5次之后退出程序,或者先连续发,后面发的时间间隔长一点,当然也可以一直发,这样有利于发现问题。
所以我添加了以下:

答案:root@lnmp_server scripts]# cat check_web_mysql.sh
#!/bin/bash
a=0
while true
do
a_apache=`ps -ef |grep httpd|grep -v grep |wc -l`
b_nginx=`ps -ef |grep nginx:|grep -v grep|wc -l`
c_mysql=`ps -ef|grep mysqld |grep -v grep|wc -l`
if [ $a_apache -ne 0 -o $b_nginx -ne 0 -o $c_mysql -ne 0 ]
then
echo “the web server is ok!”
else
echo “the web server is donw ,servername is `hostname` ,the time is $(date +%F” “%H:%M:%S)” |/bin/mail -s “web server warning” linuxclc@qq.com
((a++))
if [ $a -eq 5 ];then
exit
fi
fi
sleep 60
done

原文链接:20道必会shell题目第13题,转载请注明来源!

0