python动态监控日志内容的示例

 更新时间:2014年02月16日 09:20:33   投稿:zxhpj  
本文介绍如何使用Python动态监控程序日志的内容,这里的动态指的是日志文件不断的追加新的日志内容,动态监控是指监控日志新追加的日志内容

日志文件一般是按天产生,则通过在程序中判断文件的产生日期与当前时间,更换监控的日志文件
程序只是简单的示例一下,监控test1.log 10秒,转向监控test2.log

程序监控使用是linux的命令tail -f来动态监控新追加的日志

复制代码 代码如下:

#!/usr/bin/python
# encoding=utf-8
# Filename: monitorLog.py
import os
import signal
import subprocess
import time


logFile1 = "test1.log"
logFile2 = 'test2.log'

#日志文件一般是按天产生,则通过在程序中判断文件的产生日期与当前时间,更换监控的日志文件
#程序只是简单的示例一下,监控test1.log 10秒,转向监控test2.log
def monitorLog(logFile):
    print '监控的日志文件 是%s' % logFile
    # 程序运行10秒,监控另一个日志
    stoptime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time() + 10))
    popen = subprocess.Popen('tail -f ' + logFile, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
    pid = popen.pid
    print('Popen.pid:' + str(pid))
    while True:
        line = popen.stdout.readline().strip()
        # 判断内容是否为空
        if line:
            print(line)
        # 当前时间
        thistime = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
        if thistime >= stoptime:
            # 终止子进程
            popen.kill()
            break
    time.sleep(2)
    monitorLog(logFile2)

if __name__ == '__main__':
    monitorLog(logFile1)

相关文章

  • python3转换code128条形码的方法

    python3转换code128条形码的方法

    这篇文章主要介绍了python3转换code128条形码的方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-04-04
  • Python基础globlal nonlocal和闭包函数装饰器语法糖

    Python基础globlal nonlocal和闭包函数装饰器语法糖

    这篇文章主要为大家介绍了Python基础globlal nonlocal和闭包函数装饰器语法糖示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • python中字符串的操作方法大全

    python中字符串的操作方法大全

    这篇文章主要给大家介绍了关于python中字符串操作方法的相关资料,文中通过示例代码详细介绍了关于python中字符串的大小写转换、isXXX判断、填充、子串搜索、替换、分割、join以及修剪:strip、lstrip和rstrip的相关内容,需要的朋友可以参考下
    2018-06-06
  • Python流程控制常用工具详解

    Python流程控制常用工具详解

    这篇文章主要介绍了Python流程控制常用工具详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • python根据路径导入模块的方法

    python根据路径导入模块的方法

    这篇文章主要介绍了python根据路径导入模块的方法,分析了传统方法与改进方法,具有一定的实用价值,需要的朋友可以参考下
    2014-09-09
  • Python实现蚁群算法

    Python实现蚁群算法

    本文主要介绍了Python实现蚁群算法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • Python办公自动化PPT批量转换操作

    Python办公自动化PPT批量转换操作

    本文介绍如何使用 python 操作 PPT,用到的模块就是 python-pptx,以下的示例基本满足日常需求,如果要知道更多,可以访问 python-pptx 的官方文档
    2021-09-09
  • Python基于jieba, wordcloud库生成中文词云

    Python基于jieba, wordcloud库生成中文词云

    这篇文章主要介绍了Python基于jieba, wordcloud库生成中文词云,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • python去除文件中空格、Tab及回车的方法

    python去除文件中空格、Tab及回车的方法

    这篇文章主要介绍了python去除文件中空格、Tab及回车的方法,涉及Python针对文件与字符串操作的相关技巧,需要的朋友可以参考下
    2016-04-04
  • Python决策树和随机森林算法实例详解

    Python决策树和随机森林算法实例详解

    这篇文章主要介绍了Python决策树和随机森林算法,集合实例形式详细分析了决策树和随机森林算法的概念、原理及Python相关实现技巧与注意事项,需要的朋友可以参考下
    2018-01-01

最新评论