import os import time import datetime month_arr ={'Jan':1, 'Feb':2, 'Mar':3, 'Apr':4, 'May':5, 'Jun':6, 'Jul':7, 'Aug':8, 'Sep':9, 'Oct':10, 'Nov':11, 'Dec':12} #os.system('kill -9 2383') output = os.popen("ps aux | grep S|awk '{print $2,$11,$12}'").read().split('\n') for command_line in output: com_arr = command_line.split(' ') if(len(com_arr)==3 and com_arr[0].isdigit()): #print(com_arr); pid_str = com_arr[0] com_str = "ps -p " + pid_str + " -o lstart | grep -v \"START\"" #print(com_str) pid_start_time = os.popen(com_str).read() pid_time_arr = pid_start_time.split('\n')[0].split(' ') #print(pid_time_arr) if( len(pid_time_arr)>4 ): time_arr = pid_time_arr[3].split(':') starttime = datetime.datetime.now() endtime=datetime.datetime(int(pid_time_arr[4]), int(month_arr[pid_time_arr[1]]), int(pid_time_arr[2]), int(time_arr[0]), int(time_arr[1]), int(time_arr[2])) second_time = (starttime-endtime).seconds if( second_time>6*60*60 ): if "php" in com_arr[2]: com_kill_str = "kill "+pid_str print(com_kill_str) print('\n') #os.system(com_kill_str)
centos7php进程,python自动kill掉长时间的S类php进程(centos7.0)
最新推荐文章于 2023-11-09 10:34:33 发布
该代码段实现了一个监控系统,通过`ps`命令获取当前正在运行的进程信息,特别是查找那些运行超过6小时的PHP进程。它首先解析输出,然后使用`datetime`模块计算进程启动时间与当前时间的差值,如果超过指定时间,则发送`kill`命令结束该进程。这有助于优化系统资源的使用。
摘要由CSDN通过智能技术生成