您好,登錄后才能下訂單哦!
這篇文章給大家介紹python是怎樣實現(xiàn)監(jiān)控指定進程的cpu和內(nèi)存使用率,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
為了測試某個服務(wù)的穩(wěn)定性,通常需要在服務(wù)長時間運行的情況下,監(jiān)控其資源消耗情況,比如cpu和內(nèi)存使用
這里借助python的psutil這個包可以很方便的監(jiān)控指定進程號(PID)的cpu和內(nèi)存使用情況
process_monitor.py
import sys import time import psutil # get pid from args if len(sys.argv) < 2: print ("missing pid arg") sys.exit() # get process pid = int(sys.argv[1]) p = psutil.Process(pid) # monitor process and write data to file interval = 3 # polling seconds with open("process_monitor_" + p.name() + '_' + str(pid) + ".csv", "a+") as f: f.write("time,cpu%,mem%\n") # titles while True: current_time = time.strftime('%Y%m%d-%H%M%S',time.localtime(time.time())) cpu_percent = p.cpu_percent() # better set interval second to calculate like: p.cpu_percent(interval=0.5) mem_percent = p.memory_percent() line = current_time + ',' + str(cpu_percent) + ',' + str(mem_percent) print (line) f.write(line + "\n") time.sleep(interval)
支持跨平臺linux,windows,mac
根據(jù)pid號獲取進程實例,固定時間間隔查詢其cpu和內(nèi)存的使用百分比
將監(jiān)控數(shù)據(jù)寫入文件,一邊后續(xù)分析
必要的話,也可以額外統(tǒng)計整個機器的資源狀況
使用命令
python process_monitor.py 25272
文件保存結(jié)果
繪制出曲線圖
關(guān)于python是怎樣實現(xiàn)監(jiān)控指定進程的cpu和內(nèi)存使用率就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。