• python实现日志检测

检测特定目录下的日志文件的大小

当文件大小超过200M时,发出告警信息

  • 环境信息

linux

python2.7

  • 实现代码

代码如下,记录之:

 

#!/usr/bin/python
# -*- coding:utf-8 -*-


import os
import commands
import sys

#设置文件编码
os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8'
reload(sys)

# 设置中文
sys.setdefaultencoding('utf-8')

def CheckFileSize():
    logdir='/app/logs'
    os.chdir(logdir)
    cmd='du -sm *|sort -n -k1'
    (status, output)=commands.getstatusoutput(cmd)
#    print type(output)
#    print status
    # 将结果集str转换为list类型处理
    reslist=output.split('\n')

    # 遍历list,找出文件大小和文件名,并进行相应的告警
    for i in range(len(reslist)):
        #fsize = reslist[i].split('\\')
        fsize = int(reslist[i].split()[0])   # 将str类型转换为int类型
        fname = reslist[i].split()[1]
        
# 后续这个判断文件大小的部分,可以结果mail或短信告警处理
        if fsize > 200 :
            print "File: " + fname + " > 200M MB ,Warninig !!"
            print "File: " + fname + " Fsize:" + str(fsize) +" MB\n"

if __name__ == '__main__':
    CheckFileSize()

 

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐