python腳本監控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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM