我有服务,因为主题说死了,留下了陈旧的PID。此特定服务每分钟记录一次。所以基本上我想创建一个python脚本来检查基于修改时间的日志文件,如果文件没有在3分钟内更新,那么重启服务。
我是脚本/编程的新手,所以我需要这里的逻辑帮助...
这是我到目前为止检查文件年龄的方法。
#!/usr/bin/python
import os, datetime, time
from os import path
from datetime import datetime, timedelta
#file = "/var/log/file.log"
def check_file(seconds, file_name):
try:
time_diff = datetime.now() - timedelta(seconds)
file_time = datetime.fromtimestamp(path.getctime(file_name))
if file_time < time_diff:
return [True, "File: %s. Older than: %s, file_time:%s , date_diff:%s " % (file_name, seconds, file_time, time_diff)]
else:
return [True, "File: %s. Older than: %s, file_time:%s , date_diff:%s " % (file_name, seconds, file_time, time_diff)]
except Exception, e:
return [False, e]
答案 0 :(得分:0)
在编写自定义代码来处理这个问题(现在有2个问题)之前,我会看一下:
修复服务本身,使其不会死亡,
在框级别向该服务添加监控(请参阅this 例如)。
如果这些选项不实用,我将从基于bash的Python解决方案开始。
在任何一种情况下,您都需要确保重启脚本不会死亡。