记一次python脚本处理日志,获得想要登录成功的相关数据

首先,了解需求。要通过日志来获取登录成功的相关信息。取得日志,查看日志格式。

记一次python脚本处理日志,获得想要登录成功的相关数据

仔细检查下,重要不是代码,是思路。请听解析。

1.登录成功的日志会含有successfully的字样。所以,只要把含有该字样的字段取出来。

2.现在你会发现没行都含有INFO的头。所以,我们现在要想办法把上面的去掉。只要{ }里面的内容,仔细一看,唉!中间有一个AmLogReceiveController -,好,那就一行一行通过这个字段来分开。这样得到的是一个数组,我们只要第二个数组,也就是{ }里面的内容

3.现在得到的是一个json格式的,转对象后来取值,一行一行来转然后取。

好了,基本思路就是这样,我来放代码了。

#coding:gbk
import re
import time
import json
file = 'server1.log'
fin = open(file,'r')
c="successfully"
a=fin.readlines()
fout=open('qm.txt','w')
buff = fin.read()
print("开始处理......")
fout.write("sumbitDate"+"\t"+"xforwardedFor"+"\t"+"id"+"\t"+"msg"+"\n")
for x in a:
    if c in x:
	    attr=x.split('AmLogReceiveController -')
	    data = json.loads(attr[1])
	    fout.write(data['sumbitDate']+"\t"+data['xforwardedFor']+"\t"+data['id']+"\t"+data['msg']+"\n")			
print("处理完毕!生成的文件为qm.txt")
fin.close() 

代码写完了。接着来运行下,看行不行嘛!

记一次python脚本处理日志,获得想要登录成功的相关数据

然后检查一下。qm.txt文件

记一次python脚本处理日志,获得想要登录成功的相关数据

好了,这个逼就装到这里了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值