检测某个程序进程是否存在,不存在超过5分钟告警
时间: 2024-03-17 20:45:11 浏览: 11
可以使用Python的psutil库来监测进程是否存在,并结合时间模块来实现检测时间和告警。
以下是一个简单的示例代码:
```python
import psutil
import time
def check_process(process_name):
for proc in psutil.process_iter(['name']):
if proc.info['name'] == process_name:
return True
return False
def check_process_exist(process_name):
exist_time = 0
while True:
if check_process(process_name):
print(f"{process_name}进程存在")
exist_time = 0
else:
exist_time += 1
print(f"{process_name}进程不存在,已经过去{exist_time}分钟")
if exist_time >= 5:
print(f"{process_name}进程已经{exist_time}分钟不存在,请及时检查!")
# 在这里可以添加告警的代码
break
time.sleep(60) # 每60秒检测一次
# 示例:监测chrome进程是否存在
check_process_exist('chrome.exe')
```
这段代码中,我们定义了一个`check_process_exist`函数,该函数可以监测指定的进程是否存在。如果进程存在,则重置存在时间`exist_time`为0,否则每过60秒`exist_time`加1。当`exist_time`超过5分钟时,即进程不存在的时间超过5分钟时,会输出告警信息并跳出循环,这里只是输出告警信息,实际应用中可以根据需求进行修改,比如发送邮件或短信等。