【问题标题】:PHP gather server statisticsPHP 收集服务器统计信息
【发布时间】:2011-06-30 05:58:58
【问题描述】:

我正在为我的 web 应用程序构建一个自定义组件,该组件将对每个服务进行基准测试,到目前为止,计划是对通常的东西进行基准测试:

  • 响应时间
  • 内存
  • 当前服务器活动

等等

我已经构建了基本的东西,我正在考虑存储 linux“top”命令的输出,该命令列出了当前正在运行的进程和使用的资源量。 虽然,我无法从运行中获得任何响应:

$output = shell_exec('top');
echo "<pre>";
var_dump($output);
echo "</pre>";

但其他更简单的命令确实有效,例如 php 手册中的示例:

$output = shell_exec('ls -lart');

所以我的问题是: - 我需要以 root 身份运行“top”命令吗? (目前它在 apache 用户下运行) - 或者是否有任何其他 php 命令可以帮助我获取服务器统计信息?

我阅读了这篇文章,但我对安装任何东西并不真正感兴趣,因为我需要我的按需统计数据并将它们存储在我的数据库中。 PHP server statistics script?

【问题讨论】:

    标签: php statistics shell-exec


    【解决方案1】:

    您可以 cat /proc 目录中的任何内容,例如 cat /proc/cpuinfo,以获取有关服务器的任何 CPU 信息。 linux 中的所有内容都可以简化为文件系统,您想要查找的任何系统统计信息都可以在 /proc 中找到(几乎所有统计信息)

    【讨论】:

      【解决方案2】:

      当您的 run top 时,您会看到程序继续执行,并且没有停止。它也是互动的。

      如果你想捕获输出,你需要有一个程序执行然后停止。 top 可能有一个选项可以做到这一点。但大多数信息可以通过其他命令收集。

      像这样运行顶部:

      top -b -n1
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-23
        • 2017-05-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多