首頁  >  文章  >  後端開發  >  如何使用psutil模組取得伺服器的CPU、記憶體和磁碟使用率?

如何使用psutil模組取得伺服器的CPU、記憶體和磁碟使用率?

王林
王林轉載
2023-05-07 22:28:071406瀏覽

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, "%")

以上是如何使用psutil模組取得伺服器的CPU、記憶體和磁碟使用率?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除