#!/user/bin/python
# -*- coding: utf-8 -*-
#psutil 是一个跨平台库 能轻松实现获取系统运行的进程和利用率
import psutil
#1.1.1获取系统性能信息
#(1)cpu信息
‘‘‘
linux 操作系统cpu利用率有以下几个部分:
*User Time,执行用户进程的百分比;
*system time,执行内核进程和中断的时间百分比;
*Wait IO,由于IO等待而使cpu处于idle(空闲)状态的时间百分比;
*idle,CPU处于idle状态时间百分比
‘‘‘
#获取cpu完整信息
print(psutil.cpu_times(percpu=True))
#获取cpu单项信息
print(psutil.cpu_times().user)
#获取cpu逻辑个数
print(psutil.cpu_count())
#获取cpu 的物理个数
print(psutil.cpu_count(logical=False))
#(2)内存信息
‘‘‘
*total 内存总数
*used 已使用的内存数
*free 空闲内存数
*buffers 缓冲使用数
*cash 缓存使用数
*swqp 交换分区使用数
‘‘‘
#获取内存完整信息
mem = psutil.virtual_memory()
#获取内存总数
print(mem.total)
#获取空闲内存数
print(mem.free)
#获取swap分区信息
print(psutil.swap_memory())
#(3)磁盘信息
‘‘‘
*关注磁盘利用率及IO信息
*psutil.disk_usage 获取磁盘利用率
*磁盘IO包括
read_count(读IO数)
write_count(写IO数)
read_bytes(IO读字节数)
write_bytes(IO写字节数)
read_time (磁盘读时间)
write_time(磁盘写时间)
‘‘‘
#获取磁盘完整信息
psutil.disk_partitions()
#获取分区(参数)的使用情况
psutil.disk_usage(‘/‘)
#获取硬盘总的IO个数
psutil.disk_io_counters()
#获取单个分区的IO个数
psutil.disk_io_counters(perdisk=True)
#(4)网络信息
‘‘‘
系统的网络信息与磁盘IO类似
*bytes_sent (发送字节数)
*bytes_recv=28220119(接收字节数)
*packets_sent=200978 (发送数据包数)
*packets_recv=212672(接收数据包数)
‘‘‘
#获取网络总的IO信息
psutil.net_io_counters()
#(5)其他系统信息
#当前登陆系统的用户信息
psutil.users()
#获取开机时间
psutil.boot_time()