1、监控日志的目的:
监控某一网站是否遭到IP攻击
2、如何判定为遭到IP攻击:
若一分钟内某个IP访问超过100次,则视为IP攻击
3、如何处理:
1)找出所有的IP,统计次数
2)判断每个IP次数大于100,就给出提示
3)记录文件指针,给下一次读的时候用
4)等到60s,重新读取文件
import time
point = 0 #存放的是文件初始的位置
while True:
with open('aaa.log', encoding = 'utf-8') as f:
f.seek(point)
ip_info = 0 #存放IP和它出现的次数
for line in f:
ip = line.split()[0] #获取IP地址
if ip in ip_info:
ip_info[ip] += 1
else:
ip_info[ip] = 1
point = f.tell() #获取当前文件指针的位置
for k in ip_info:
if ip_info.get(k) >= 100:
print('该ip正在攻击你的%s'%k)
time.sleep(60)