Python 统计日志中每个IP出现的次数

来源:互联网 发布:吾生有涯而知无涯解析 编辑:程序博客网 时间:2024/04/29 17:09
这脚本可用于多种日志类型,本人测试MDaemon的all日志文件大小1.23G左右,分析用时2~3分钟

代码很简单,很适合运维人员,有不足的地方请大家指出哦

#-*- coding:utf-8 -*-import re,timedef mail_log(file_path):    global count    log=open(file_path,'r')    C=r'\.'.join([r'\d{1,3}']*4)    find=re.compile(C)    count={}    for i in log:        for ip in find.findall(i):            count[ip]=count.get(ip,1)+1if __name__ == '__main__':    print time.clock()    num=0    mail_log(r'e:\MDaemon-20110329-all.log')    R=count.items()    for i in R:        if i[1]>0: #提取出现次数大于0的IP            print i            num+=1    print '符合要求数量:%s耗时(%s)'%(num,time.clock())             

转自:http://www.oschina.net/code/snippet_591089_12662

原创粉丝点击