写一个脚本设置每10min记录一次占内存最高的进程
以下是一个Python脚本,可以每10分钟记录一次占用内存最高的进程:
import psutil
import time
def get_highest_memory_process():
processes = []
for proc in psutil.process_iter(['pid', 'name', 'memory_info']):
try:
pinfo = proc.info
processes.append((pinfo['pid'], pinfo['name'], pinfo['memory_info'].rss))
except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
pass
processes.sort(key=lambda x: x[2], reverse=True)
return processes[0]
while True:
process = get_highest_memory_process()
print(f"Process ID: {process[0]}, Name: {process[1]}, Memory Usage: {process[2]}")
time.sleep(600) # 暂停10分钟
这个脚本使用了psutil库来获取系统进程的信息。get_highest_memory_process函数获取当前所有进程的PID、名称和内存使用情况,并返回占用内存最高的进程。然后,在一个无限循环中,每10分钟调用一次该函数并打印结果。你可以根据需要自行修改脚本,例如将结果记录到日志文件中
原文地址: http://www.cveoy.top/t/topic/iJLQ 著作权归作者所有。请勿转载和采集!