一个log文件保存有如下格式的url数据:
url@返回状态码@响应时间
login@200@40
login@200@30
login@200@50
register@200@20
register@200@30
1、统计出login返回状态码为200的平均响应时间
import numpy as np
time_list = []
with open('a.log','r') as fout:
for line in fout.readlines():
if len(line.strip()) != 0:
data = line.strip().split('@')
url = data[0]
status = data[1]
time = data[2]
if url == 'login' and status == '200':
time_list.append(int(time))
mean_time = np.mean(time_list)
print(mean_time)
2、统计出返回状态码为200的同一url的平均响应时间
import numpy as np
import collections
d = collections.defaultdict(list)
with open('a.log','r') as fout:
for line in fout.readlines():
if len(line.strip()) != 0:
data = line.strip().split('@')
url = data[0]
status = data[1]
time = data[2]
if status == '200':
d[url].append(time)
print(d)
#{'login': ['40', '30', '50'], 'register': ['20', '30']}
for i in d:
mean_time = np.mean(list(map(int,d[i])))
print('url:%s,mean_time:%s'%(i,mean_time))