管理Linux进程的监控类
2010-03-26 09:53
267 查看
/** * Monitor 监控程序 * @author yangyu <yangyu@sina.cn> * @version 1.0_20100110 * @package daemon */ <?php class Monitor { private $bin_php = '/opt/bin/php'; // php执行文件路径 private $path_daemon = '/opt/www/daemon/deal/'; // daemon根目录 private $process = array( 'cron_test.php', // crontab 测试 ); public function __construct() { foreach($this->process as $process) { if(!$this->checkpro($process)) $this->startpro($process); } return 1; } private function checkpro($process) { $cmd = "ps -aef | grep '{$this->path_daemon}{$process}' | grep -v 'grep' | wc -l"; $fp = @popen($cmd, "r"); $num = @fread($fp, 512); $num += 0; @pclose($fp); if($num<=0) return 0; return 1; } private function startpro($process) { $cmd = "{$this->bin_php} {$this->path_daemon}{$process} > /dev/null &"; $fp = @popen($cmd, "r"); if($fp) @pclose($fp); } } ?>
大概解释一下吧,属性和构造函数那块就不说了,主要就是检查进程和开始进程这两个方法,$cmd后面那条命令是取得cron_test.php在执行的进程数量,grep匹配,-v反转匹配,这个也不用说了吧,wc = word count, -l = -line,就是行数,如果<=0,就开始在系统后台执行,没什么太多东西,就是当做一个监控管理工具类来用。
相关文章推荐
- Linux 进程管理与监控(supervise and monit)
- htop: 比top好用的Linux进程管理监控工具
- Linux全攻略--系统性能、进程监控和日志管理
- Linux全攻略--系统性能、进程监控和日志管理
- Linux全攻略--系统性能、进程监控和日志管理
- RHEL六(监控和管理Linux进程)
- Linux基础--------监控系统、进程管理、软件包管理-------free、dd、kill、 rpm、yum、源码安装python
- Linux 基础 —— Linux 进程的管理与监控
- htop: 比top好用的Linux进程管理监控工具
- Linux初窥:系统管理之(进程管理、定时任务、系统监控)
- Linux全攻略--系统性能、进程监控和日志管理 推荐
- Linux全攻略--系统性能、进程监控和日志管理
- linux进程监控及管理
- 监控和管理Linux进程(新手求指教)
- 【linux之进程管理,系统监控】
- 1-7监控和管理linux进程
- 【linux基础】18、进程管理基础
- 详解Linux进程及作业管理
- Linux 进程管理
- 博客12:linux进程和相关进程查看管理命令以及作业管理