windows进程监控脚本

有一些老的业务在windows服务器iis站点上,部分会跑满cpu,用了个python脚本来监控进程,当cpu过高时杀死进程,同时记录日志

import psutil
import os
import time
import logging
def KillProcess():
    os.kill(pid,2)
      
def ProcessLog():
    LOG_FORMAT = "%(asctime)s %(name)s %(levelname)s %(pathname)s %(message)s "
    DATE_FORMAT = %Y-%m-%d  %H:%M:%S %a 
    logging.basicConfig(level=logging.INFO,
                        format=LOG_FORMAT,
                        datefmt=DATE_FORMAT,
                        filename=r"D:\Soft\python\jiaoben\Process.log"
                        )

    logging.info(%s The end of this process has been!!!,FilePath)
#####################################################################################################
if __name__ == __main__:
     pl=psutil.pids()
     r=[]
     for pid in pl:
         try:
             p=psutil.Process(pid)
             r.append((pid,p.name(),p.cpu_percent()))
             FilePath=p.username()
             CpuPercent=p.cpu_percent(interval=0.2)
             if (p.name() == w3wp.exe) and (CpuPercent >= 400):
                KillProcess()
                ProcessLog()
         except:
             pass

 

windows进程监控脚本

上一篇:将"在此处启动Windows Terminal"添加到右键菜单


下一篇:Asp.Net.Core WebApi 版本控制