一、获取CPU信息
User Time 执行用户进程的时间百分比
System Time 执行内核进程和中断的时间百分比
Wait IO 空闲时间比
idle cpu处于idle状态的时间百分比
psutil.cpu_times() #cpu的完整信息,默认percup为False
psutil.cpu_times(percpu=True) #返回多个即列表形式
cpu_info = psutil.cpu_times() #获取单个信息
cpu_info.user
cpu_info.nice
psutil.cpu_count() #cpu逻辑个数,默认logical为True
psutil.cpu_count(logical=False) #logical为False返回的是cpu的物理个数
二、获取内存信息
内存的总数(total)
已经使用的内存数(used)
空闲的内存数(free)
缓冲使用数(buffers)
缓存使用数(cache)
交换分区使用数(swap)
psutil.virtual_memory() #返回内存的完整信息
svmem(total=1927991296, available=363003904, percent=81.2, used=1350471680, free=111476736, active=852549632, inactive=804536320, buffers=64618496, cached=401424384, shared=55500800)
三、获取磁盘信息
1、磁盘的利用率
2、IO信息
psutil.disk_partitions() 获取磁盘的完整信息
psutil.disk_usage('/') 获得分区的使用情况,这边以根分区为例
psutil.disk_io_counters() 获取磁盘总的io个数
perdisk 默认为False
psutil.disk_io_counters(perdisk=True) perdisk为True 返回单个分区的io个数
四、获取进程信息
psutil.pids() 返回系统进程pid
Process 返回一个process对象,参数为进程的pid
p = psutil.Process(408)
p.name() 进程的名字
p.exe() 进程bin文件位置
p.cwd() 进程的工作目录的绝对路径
p.status() 进程的状态
p.create_time() 进程的创建时间,时间戳
time.ctime(p.create_time()) 将时间戳转换为字符串时间
p.uids() 进程的uid信息
p.gids() 进程的gid信息
p.cpu_times() cup时间信息
p.memory_info() 进程内存的利用率
p.io_counters() 进程的io读写信息