Python,服务死了,但PID仍然存在。日志文件每分钟更新一次

时间:2015-07-10 21:15:51

标签: python

我有服务,因为主题说死了,留下了陈旧的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]

1 个答案:

答案 0 :(得分:0)

在编写自定义代码来处理这个问题(现在有2个问题)之前,我会看一下:

  1. 修复服务本身,使其不会死亡,

  2. 在框级别向该服务添加监控(请参阅this 例如)。

  3. 如果这些选项不实用,我将从基于bash的Python解决方案开始。

    在任何一种情况下,您都需要确保重启脚本不会死亡。