python 日志分析_python 日志分析统计脚本 | 学步园
脚本类似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 bar图_python使用matplotlib绘图 — barChart | 学步园
matplotlib是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中.它的文档相当完备,并且 ...
- python快速查找_python应用_快速查找 | 学步园
快速查找 import random def partition(list_object,start,end): random_choice = start#random.choice(range(s ...
- python日志记录_Python日志记录
python日志记录 To start, logging is a way of tracking events in a program when it runs and is in executi ...
- python性能差_Python 性能分析大全
虽然运行速度慢是 Python 与生俱来的特点,大多数时候我们用 Python 就意味着放弃对性能的追求.但是,就算是用纯 Python 完成同一个任务,老手写出来的代码可能会比菜鸟写的代码块几倍,甚 ...
- python数据获取与文本分析_python文本分析之处理和理解文本
前言: 在进行自然语言的建模(NLP)时,我们通常难以处理文字类型的数据,因此在常见的机器学习项目中,数据的格式是结构化的,就算在视觉处理的时候也是一个矩阵或者高维张量的形式.那么文字类型的数据我们应 ...
- python log模块_python日志模块logbook使用方法
python自带了日志模块logging,可以用来记录程序运行过程中的日志信息.同时python还有logbook模块用来取代logging模块,在很多的项目中logbook模块使用也是比较的多,因此 ...
- python log模块_Python日志模块-logging
一.logging模块 日志的作用可以简单总结为以下3点: 1.程序调试 2.了解软件程序运行情况,是否正常 3.软件程序运行故障分析与问题定位 1.日志的等级 不同的应用程序所定义的日志等级可能会有 ...
- python logging模块默认日志级别_Python 日志模块logging
logging模块: logging是一个日志记录模块,可以记录我们日常的操作. logging日志文件写入默认是gbk编码格式的,所以在查看时需要使用gbk的解码方式打开. logging日志等级: ...
- python 打印模块_Python 日志打印模块
1 logging模块简介 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 可以通过设置不同 ...
最新文章
- ceph-osd无法获取osd map导致osd down掉的解决办法
- Centos6.5 安装配置docker
- ffmpeg-- audio decoder
- 爬虫基本库的使用---urllib库
- java object 比较_Java比较两个对象
- java https通讯_Kubernetes - HTTPS在服务之间进行通信
- 公用机房计算机主板选购,才知道,IDC机房运维工作居然可以如此简单!
- 页面的缓存与不缓存设置
- 九阴真经 第二层 第6天
- sql server 复制_SQL Server复制(合并)–复制什么,什么不复制
- 区块链中的基础数据结构
- hp服务器引导驱动器,windows-server-2008 – 在没有SmartStart的HP Proliant服务器上安装Windows...
- c语言编程电影院票务系统,C++课程设计----电影院售票系统
- 【设计模式】-工厂模式->抽象工法模式(源码与类图解析)
- snipaste如何滚动截图_试用了20个截图工具,我写下这份超全的软件指南。?
- java 股票指标算法库_股票K线指标算法整理(Java封装工具类,K线指标算法工具类)...
- 修改IE地址栏Tomcat小猫咪图标
- 计算机应用基础(第二版)周南岳,微波电子自旋共振实验中需要将样品谐振腔调节为驻波模式...
- markdown在前端的简单使用
- 计算机主机声音怎么办,电脑主机声音大,详细教您电脑主机声音大怎么办
热门文章
- ERP兵法——从案例透视方法(实施篇下)
- SAP中smartforms参数
- sy-repid 和 sy-cprog的区别
- 开学季,如何用数据保证学生安全?这套方案值得一看
- 左手高仿,右手二奢,这届年轻人的奢侈品消费有点迷
- 宏光MINI EV收割的年轻人,又被苏宁、小米、欧拉盯上了
- 波司登,除了羽绒服还是羽绒服
- 百度智能云一周连签三个新基建大单,“非对称竞争”优势凸显?
- 6. 以下耦合度中最松散的耦合是_Spring Java中的依赖注入,它是如何工作的?- 知识铺...
- 用jk触发器构成二分频电路_深入了解数字电路之时序电路