使用python根据某个设备进程名字去获取12小时的cpu和内存曲线图
要获取设备进程的CPU和内存曲线图,需要使用Python中的一些库和工具。以下是一个基本的步骤:
- 安装必要的库和工具:matplotlib、psutil、numpy
pip install matplotlib psutil numpy
- 导入库和工具
import matplotlib.pyplot as plt
import psutil
import numpy as np
import datetime as dt
- 获取进程ID
process_name = "your_process_name"
pid = None
for proc in psutil.process_iter(['pid', 'name']):
if process_name in proc.info['name']:
pid = proc.info['pid']
break
- 获取CPU和内存使用率
cpu_usage = []
memory_usage = []
time = []
for i in range(1440):
try:
p = psutil.Process(pid)
cpu_usage.append(p.cpu_percent())
memory_usage.append(p.memory_percent())
time.append(dt.datetime.now())
time.sleep(5)
except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
break
- 绘制曲线图
fig, ax1 = plt.subplots()
ax1.plot(time, cpu_usage, 'b-')
ax1.set_xlabel('Time')
ax1.set_ylabel('CPU Usage', color='b')
ax1.tick_params('y', colors='b')
ax2 = ax1.twinx()
ax2.plot(time, memory_usage, 'r-')
ax2.set_ylabel('Memory Usage', color='r')
ax2.tick_params('y', colors='r')
fig.tight_layout()
plt.show()
这将生成一个包含CPU和内存使用率的12小时曲线图
原文地址: https://www.cveoy.top/t/topic/cJFS 著作权归作者所有。请勿转载和采集!