python通过psutil获取服务器cpu,内存,磁盘使用率
psutil是一个跨平台的Python库,它允许你获取有关系统进程和系统资源使用情况的信息。它支持Windows、Linux、OS X、FreeBSD、OpenBSD和NetBSD等操作系统,并提供了一些非常有用的功能,如:
- 获取系统CPU使用率、内存使用率、磁盘使用率等信息。
- 获取进程列表、进程状态、进程CPU使用率、进程内存使用率、进程IO信息等。
- 杀死进程、发送信号给进程、挂起进程、恢复进程等操作。
使用psutil,可以很方便地监控系统的运行状况,诊断问题和优化性能。以下是一个简单的示例,演示如何使用psutil获取系统CPU使用率和内存使用率:
import psutil # 获取磁盘使用率(windows),linux服务器可以获取根目录/下的磁盘使用率 disk_usage_C = psutil.disk_usage('/') #disk_usage()方法可以获取指定路径的磁盘使用情况,返回一个namedtuple对象,包含total、used、free、percent四个属性,分别表示总容量、已用容量、可用容量和使用率。 disk_usage_C = psutil.disk_usage('C:') print("C磁盘总体情况: ","总容量:",round(disk_usage_C.total/1073741824,2),"G"," 磁盘使用率:",disk_usage_C.percent, "%",sep='') # sep='' 去除print()内空格,round(数值,2):保留两位小数 ,1G等于1,073,741,824byte disk_usage_D = psutil.disk_usage('D:') print("D磁盘使用率:","总容量:",round(disk_usage_D.total/1073741824,2),"G"," 磁盘使用率:",disk_usage_D.percent, "%",sep='') disk_usage_E = psutil.disk_usage('E:') print("E磁盘使用率:","总容量:",round(disk_usage_E.total/1099511627776,1),"T"," 磁盘使用率:",disk_usage_E.percent, "%",sep='') # 获取内存使用率 #virtual_memory()方法可以获取系统内存使用情况,返回一个namedtuple对象,包含total、available、percent、used、free五个属性,分别表示总内存、可用内存、使用率、已用内存和可用内存。 mem = psutil.virtual_memory() print("内存总量: ",round(mem.total/1073741824,2),"内存使用率:", mem.percent, "%") # 获取CPU使用率 #cpu_percent()方法可以获取CPU使用率,可以指定采样间隔(默认为1秒),返回一个浮点数,表示CPU使用率 cpu_percent = psutil.cpu_percent(interval=1) print("cpu核数: ",psutil.cpu_count(),"CPU使用率:", cpu_percent, "%")