python 日志分析统计脚本
2012-10-09 18:26
651 查看
http://www.apparitor.info/2012/03/19/python-%E6%97%A5%E5%BF%97%E5%88%86%E6%9E%90%E7%BB%9F%E8%AE%A1%E8%84%9A%E6%9C%AC/
脚本类似shell的tail功能,用来统计每分钟的4xx、5xx的状态码数量,统计php执行时间小于1秒、1-5秒、5秒以上的数量,和每秒的并发请求。将结果放到/tmp目录下, 也可以用cacti将结果画图。
脚本类似shell的tail功能,用来统计每分钟的4xx、5xx的状态码数量,统计php执行时间小于1秒、1-5秒、5秒以上的数量,和每秒的并发请求。将结果放到/tmp目录下, 也可以用cacti将结果画图。
#!/usr/bin/env python import time, os #----------------------------- log_file = '/var/log/httpd/cmi_access_log' #----------------------------- log_name = log_file.split('/')[-1] file = open(log_file, 'r') lt1,to1_5,gt5,status4,status5,concurrent = 0,0,0,0,0,0 Time2 = '0' st_results = os.stat(log_file) st_size = st_results[6] file.seek(st_size) size = os.path.getsize(log_file) while 1: Time = time.strftime("%Y_%m_%d",time.localtime(time.time() - 60)) where = file.tell() line = file.readline() L = line.split('"') Time1 = time.strftime("%Y_%m_%d_%H:%M",time.localtime(time.time() - 60)) if not line: size = os.path.getsize(log_file) if size < where: file = open(log_file, 'r') else: time.sleep(1) file.seek(where) else: try: Phptime = float(L[-2]) url = L[1] status = L[2][1:4] if '4' in status[0]: status4 += 1 elif '5' in status[0]: status5 += 1 if Time1 in Time2: if 'f5.php' not in url: concurrent += 1 if Phptime < 1: lt1 += 1 elif 1 <= Phptime <= 5: to1_5 += 1 else: gt5 += 1 else: concurrent = concurrent / 60 out = Time1 + "," + str(lt1) + "," + str(to1_5) + "," + str(gt5) + "," + str(status4) + "," + str(status5) + "," + str(concurrent) F = open('/tmp/' + log_name + '_' + Time + '.data', 'a') print >> F, out F.close() Time2 = Time1 lt1,to1_5,gt5,status4,status5,concurrent = 0,0,0,0,0,0 except: pass
相关文章推荐
- python 日志分析统计脚本
- python自动化工具日志查询分析脚本代码实现
- Python的一个增量读分析日志的脚本
- Python脚本收集腾讯云CDN日志,并入ELK日志分析
- python多维度分析统计nginx访问日志
- 使用shell脚本分析网站日志统计PV、404、500等数据
- python 脚本统计squid日志中的IP访问数和URL访问数量
- 分析nginx日志脚本之python
- python分析nignx访问日志脚本分享
- python分析apache访问日志脚本分享
- Python正则表达式,统计分析nginx访问日志
- Python脚本收集腾讯云CDN日志,并入ELK日志分析
- python分析apache访问日志脚本分享
- python脚本实现统计日志文件中的ip访问次数代码分享
- python 实现nginx/apache 日志格式的统计脚本
- python分析nignx访问日志脚本分享
- Python编写日志分析小脚本
- 【脚本语言系列】关于Python统计分析statsmodel,你需要知道的事
- 一个简易的python脚本统计nginx日志里的url及大小
- 系统访问日志统计及邮件发送脚本--python实现