模块:psutil
简介:获取服务器cpu使用率以及内存使用率,网络出入流量,以及计算磁盘使用大小
improt psutil
##获取cpu信息
def cpu():
import psutil
psutil.cpu_percent() #查看cpu使用率
psutil.cpu_count() #获取CPU的逻辑个数
psutil.cpu_count(logical=False) #获取CPU的物理个数
psutil.cpu_times(percpu=True) #获取CPU的全部信息
psutil.cpu_times().user1 #获取user1使用CPU的时间比
##获取内存信息
def memory():
import psutil
psutil.virtual_memory() #获取memory所有信息
psutil.virtual_memory().total #获取内存的总数
psutil.virtual_memory().free #获取内存空闲数
psutil.swap_memory() #获取swap分区的所有信息
psutil.swap_memory().total #获取swap分区总数
psutil.swap_memory().free #获取swap分区空闲数
##获取磁盘信息
def disk():
import psutil
psutil.disk_partitions() #获取磁盘的所有信息
psutil.disk_usage("sda1") #获取sda1的磁盘使用情况
psutil.disk_io_counters(perdisk=True) #获取单个分区IO个数
##获取网络信息
def net():
import psutil
psutil.net_io_counters() #获取网络总的IO信息
psutil.net_io_counters(pernic=True) #输出每个网络接口的IO信息
##获取当前登录用户信息
def user():
import psutil
psutil.users()
##获取机器启动时间
def boottime():
import psutil,datetime
psutil.boot_time()
datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H: %M: %S") #转换为标准的时间格式
#系统进程
def pid():
import psutil
psutil.pids() #列出所有的pid
pid1 = psutil.Process(254) #实例化一个PID
pid1.name() #获取进程名字
pid1.exe() #获取进程bin路径
pid1.cwd() #获取进程工作目录的绝对路径
pid1.status() #获取进程状态
pid1.uid() #获取进程uid信息
pid1.gid() #获取进程gid信息
pid1.cpu_times() #进程CPU时间信息
pid1.memory_percent() #进程内存利用率
pid1.memory_info() #进程内存rss和vms信息
pid1.io_counters() #进程IO信息
pid1.connections() #打开进程的socket的namedutples列表,包括fs,family,laddr等信息
pid1.num_threads() #进程开启的线程数
##pop类实现获取用户启动的应用程序进程信息
def pop():
import psutil
from subprocess import PIPE
pid2 = psutil.Popen(["/usr/bin/python","-c","print('Hello word')"],stdout=PIPE)
p.name()
p.username()