tetreum/process-monitor 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tetreum/process-monitor

最新稳定版本:v1.3

Composer 安装命令:

composer require tetreum/process-monitor

包简介

A system process monitor & manager for PHP

README 文档

README

Monitor & manage system processes in PHP for Linux & Windows(basic support).

Install

composer require tetreum/process-monitor "1.*"

Examples

To see all available process commands & properties, check: https://github.com/tetreum/ProcessMonitor/blob/master/src/Process.php

See process status
use ProcessMonitor\ProcessMonitor;

$monitor = new ProcessMonitor();
$process = $monitor->search("apache");
    
if (!$process) {
    exit;
}
    echo "Apache (PID: " . $process->pid . ") is using " . $process->cpu . "% CPU and " . $process->ram . " RAM";
Kill a process
use ProcessMonitor\ProcessMonitor;

$monitor = new ProcessMonitor();
$process = $monitor->search("rust-server");

if (!$process) {
    exit;
}
    
if ($process->defunct) {
    $process->kill();
    // or you can just kill it's childs
    // $process->killChilds();
}
Search muliple processes at the same time
use ProcessMonitor\ProcessMonitor;

$monitor = new ProcessMonitor();
$processList = $monitor->searchMultiple("rust-server|nginx");

You can also get a summary of the top consuming processes of this search

use ProcessMonitor\ProcessMonitor;

$monitor = new ProcessMonitor();
$result = $monitor->searchMultiple("rust-server|nginx", true);

// $result->processes contains the process list
// $result->summary:
// $result->summary["cpu"] // the most cpu consuming process
// $result->summary["defunct"] // returns any defunct process
/*
    [summary] => Array
        (
            [cpu] => ProcessMonitor\Process Object
                (
                    [user] => root
                    [pid] => 1230
                    [cpu] => 5
                    [ram] => 0.1
                    [vsz] => 15624
                    [rss] => 1412
                    [tty] => ?
                    [stat] => Ss
                    [start] => Apr13
                    [time] => 0:00
                    [command] => nginx: master process /usr/sbin/nginx
                    [defunct] =>
                    [debug:protected] =>
                )

            [defunct] =>
        )
*/

Troubleshooting

  • I get a "Fatal error: Class 'COM' not found" in Windows:

In php.ini add:

[PHP_COM_DOTNET]
extension=php_com_dotnet.dll
  • I don't know where my php.ini file is:

php --ini

统计信息

  • 总下载量: 20.66k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 13
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 13
  • Watchers: 2
  • Forks: 6
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-03-09