【发布时间】:2015-01-07 19:59:39
【问题描述】:
我正在尝试使用 psutil 模块编写一个非常简单的 python 脚本来返回进程 ID、创建时间、名称和 CPU %。最终我将使用它来监控基于这些返回值的特定阈值,但对于我们的案例,我将使用一个简单的示例
- 操作系统:CentOS 6.5
- Python:2.6.6(基本 CentOS 6 软件包)
- psutil:0.6.1
当我运行以下脚本时,它会为除 cpu_percent 之外的所有内容返回正确的值。它为每个进程返回 0.0。我认为问题是由于 cpu_percent 的默认间隔为 0。我正在使用 psutil.process_iter() 和 as_dict 来遍历正在运行的进程。我不确定如何设置间隔。我有什么遗漏吗?
#! /usr/bin/python
import psutil
for proc in psutil.process_iter():
try:
pinfo = proc.as_dict(attrs=['pid', 'name', 'create_time', 'get_cpu_percent'])
except psutil.NoSuchProcess:
pass
else:
print(pinfo)
【问题讨论】:
-
psutil 的最新版本是 2.2。您仍然使用 0.6 的任何原因?
-
我只是在使用 CentOS 6 发行版。我想我应该使用最新的。