监控PHP进程和错误日志检查的shell
1:在做一些异步处理的时候,难免会有程序挂掉的情况,此shell可用来监听队列处理的PHP脚本进程,如果该进程死掉将重启。
#!/bin/bashprocess=`ps -ef|grep '/www/project/handle.php'|grep -v grep|wc -l`if [ $process -eq 0 ];then/usr/bin/php /www/project/handle.php#此处也可以记录下日志,了解挂掉的情况fi
#!/bin/shnow=`date +%Y%m%d%H` #当前时间截止到小时logPath=/data/log/ #日志的目录thisIp=`ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|head -n1|awk '{print $2}'|tr -d "addr:"` #如果程序发布到多台机器取出当前机器的IP#errorLogFile=`find $logPath -name $errorBegin"*.log"` #如果是查找所有的错误日志可用这个fileName=$now"_test_error.log" #程序中抛异常时记录的日志if [ -f "$logPath$fileName" ];thenecho $thisIp" server have error log; -logpath:"$logPath$fileName|mail -s server error log user@domain.com #给相关人员发mail#如果有已经实现的通知机制,在此执行该程序即可fi