监控php后台脚本的shell

By | 2012年1月16日

因为项目需要有脚本不停的处理队列信息,所以需要监控脚本是否停止了,如果停止则需要再次启动。于是写了个脚本

#! /bin/bash
cd /data/www/xs8.cn/app.xs8.cn/shell/ #脚本所在目录
F=(CHANGE_USER_TICKET.php CHANGE_USER_LEVEL.php USER_COST.php) #需要监控的脚本文件名
L=(log_ticket log_level log_cost) #脚本对应的日志文件
for((i=0;i<${#F[@]};i++));do
  n=`ps aux|grep ${F[$i]}|grep -v grep|wc -l`;
  if(($n < 1));then
    nohup /usr/bin/php ${F[$i]} >> ${L[$i]} 2>&1 &
  fi
done;

然后将其写入crontab,每10分钟执行

*/10 * * * * /bin/bash /opt/sbin/check_shell.sh > /dev/null 2>&1

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据