Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在UNIX服务器中监视特定应用程序的cpu利用率_Unix - Fatal编程技术网

如何在UNIX服务器中监视特定应用程序的cpu利用率

如何在UNIX服务器中监视特定应用程序的cpu利用率,unix,Unix,最高指挥部的审判 top | grep 但是cpu的百分比会有不同的变化。而且,如果我将这个值与每五分钟刷新一次的监控工具进行比较,它就不同了 试用 ps -o %cpu -p <pid> ps-o%cpu-p …但仍然没有帮助这已在中得到回答: 准备 要计算特定进程的CPU使用率,您需要 以下: 系统的正常运行时间(秒) #14utime-在用户代码中花费的CPU时间,以时钟滴答为单位 #15stime-在内核代码中花费的CPU时间,以时钟周期为单位 #16cutim

最高指挥部的审判

top | grep

但是cpu的百分比会有不同的变化。而且,如果我将这个值与每五分钟刷新一次的监控工具进行比较,它就不同了

试用

ps -o %cpu -p <pid>
ps-o%cpu-p

…但仍然没有帮助

这已在中得到回答:

准备 要计算特定进程的CPU使用率,您需要 以下:

    • 系统的正常运行时间(秒)
    • #14
      utime
      -在用户代码中花费的CPU时间,以时钟滴答为单位
    • #15
      stime
      -在内核代码中花费的CPU时间,以时钟周期为单位
    • #16
      cutime
      -等待孩子花在用户代码中的CPU时间(以时钟节拍为单位)
    • #17
      cstime
      -等待孩子花在内核代码上的CPU时间(以时钟周期为单位)
    • #22
      starttime
      -进程开始的时间,以时钟滴答为单位
  • 系统的赫兹(每秒时钟滴答数)。
    • 在大多数情况下, 可用于返回时钟滴答数
    • C函数调用也可用于返回赫兹值

  • 计算 首先,我们确定流程花费的总时间:

    total_time = utime + stime
     We also have to decide whether we want to include the time from children processes. If we do, then we add those values to
    
    总时间

    total_time = total_time + cutime + cstime
    
    接下来,我们将以秒为单位获得自该进程以来经过的总时间 开始:

    seconds = uptime - (starttime / Hertz)
    
    最后,我们计算CPU使用率百分比:

    cpu_usage = 100 * ((total_time / Hertz) / seconds)
    
    另见


    ps-o%cpu显示进程生命周期内的cpu使用情况。您的监控工具可能只显示5分钟内的平均CPU使用率-您应该了解特定监控工具的工作原理。您可以将top-d降低到平均速度,例如每10秒运行top-d 10,或每5分钟执行
    top-d 300
    。由于最后10秒或最后5分钟的CPU使用率没有存储在任何位置,因此您必须等待10秒或5分钟才能获得正确的初始值。@kanchan:我很高兴它对您有效,将答案标记为正确将帮助其他可能有相同问题的人。