模块:psutil
psutil是一个跨平台库,可以很轻松的为我们实现获取系统运行的进程和资源利用率等信息。
功能:主要是为了系统监控
安装:
1
2
3
4
|
wget https:
//pypi
.python.org
/packages/source/p/psutil/psutil-2
.0.0.
tar
.gz --no-check-certificate
tar
-zxvf psutil-2.0.0.
tar
.gz
cd
psutil-2.0.0
python setup.py
install
|
进程信息:
进行信息主要包括以下几个部分:
Psutil.Process() 使用方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
import
psutil,datetime
psutil.pids()
# 列出所有进程PID
a
=
psutil.Process(xxx)
# 实例化Process对象,xxx为一个进程的PID
a.name()
# 进程名
a.exe()
# 进程bin路径
a.cwd()
# 进程工作目录绝对路径
a.status()
# 进程状态
a.create_time()
# 进程创建时间,时间戳格式
datetime.datetime.formtimestamp(a.create_time()).strftime(
'%Y-%m-%d %H:%M:%S'
)
# 自然时间格式
a.uids()
# 进程UID信息
a.gids()
# 进程GID信息
a.cpu_times()
# 进程CPU时间信息,包括user、system两个CPU时间
a.cpu_affinity()
# get进程CPU亲和度,如果设置进程CPU亲和度,将CPU号作为参数即可
a.memory_percent()
# 进程内存利用率
a.memory_info()
# 进程内存rss、vms信息
a.io_counters()
# 进程IO信息,包括读写IO数及字节数
a.connections()
# 返回打开进程的socket 的namedutples 列表,包括fd、family、laddr等信息
a.num_threads()
# 进程开启的线程数
|
作用:获取用户启动的应用程序进程信息,以便跟踪程序进程的运行状态popen类的使用:
使用方法:
1
2
3
4
5
6
7
8
|
import
psutil
from
subprocess
import
PIPE
# 通过psutil的Popen方法启动的应用程序,可以跟踪被程序运行的所有相关信息
a
=
psutil.Popen([
'/usr/bin/python'
,
'-c'
,
'print('
hello
')'
],stdout
=
PIPE)
a.name()
a.username()
a.communicate()
a.cpu_times()
|
本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/2050034,如需转载请自行联系原作者