做監控的時候,可能會用到psutil這個python包來獲取機器的cpu、memory、disk、net、os和一些其他的資訊,今天對psutil這個包做了進一步的分析。各項引數的獲取大同小異,此處以memory為例。
獲取psutil python包,github
psutil/init.py
if linux:..
. procfs_path =
"/proc"..
.
獲取記憶體的資訊,從如下**可以看到記憶體資訊的獲取「/proc/meminfo」。
/psutil/_pslinux.py
def
virtual_memory()
:...
missing_fields =
mems =
with open_binary(
'%s/meminfo'
% get_procfs_path())
as f:
for line in f:
fields = line.split(
) mems[fields[0]
]=int(fields[1]
)*1024
total = mems[b'memtotal:'
] free = mems[b'memfree:'].
..defswap_memory()
:...
mems =
with open_binary(
'%s/meminfo'
% get_procfs_path())
as f:
for line in f:
fields = line.split(
) mems[fields[0]
]=int(fields[1]
)*1024
try:
total = mems[b'swaptotal:'
] free = mems[b'swapfree:'].
..used = total - free
percent = usage_percent(used, total, round_=1)
...
函式「open_binary」:
def
open_binary
(fname,
**kwargs)
:return
open
(fname,
"rb"
,**kwargs)
官方文件:
Python模組學習 psutil模組
psutil模組 psutil模組能夠提供介面,用來獲取以下資源資訊 psutil模組實現了很多功能,包括以下工具所具有的 ps top dfkill free lsof netstat ifconfig nice iotop uptime ttywho taskset 由此可見,可以利用psuti...
python模組詳解 psutil
目錄 psutil是乙個開源切跨平台的庫,其提供了便利的函式用來獲取才做系統的資訊,比如cpu,記憶體,磁碟,網路等。此外,psutil還可以用來進行程序管理,包括判斷程序是否存在 獲取程序列表 獲取程序詳細資訊等。而且psutil還提供了許多命令列工具提供的功能,包括 ps,top,lsof,ne...
python中系統資訊模組 psutil
獲得系統效能資訊 1 psutil.cpu times 獲得cpu資訊 2 psutil.vitual memory 獲得記憶體使用資訊 psutil.swap memory 獲得交換分割槽使用資訊 3 psutil.disk partitions 獲得磁碟的分割槽情況 psutil.disk us...