码迷,mamicode.com
首页 > 其他好文 > 详细

监控服务器日志

时间:2018-11-27 13:46:52      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:+=   readline   seek   日志   count   utf-8   字典   lines   else   

#需求:
#1、每分钟监控服务器日志,ip请求超过200次的,加入黑名单

#1、读文件,获取到每行的内容 open readlines
# 178.210.90.90 - - [04/Jun/2017:03:44:13 +0800]
#2、找到ip,按照空格分隔字符串,取第一个元素 split
#3、把ip存到字典里面,每个ip出现一次,ip次数就+1
#4、判断ip次数是否大于200,加入黑名单
point = 0 #
import time

while True:
ips = {} # 存放ip地址的
f = open(‘access.log‘,encoding=‘utf-8‘)
f.seek(point)
for line in f.readlines():
#获取所有的ip和次数,存到字典里面
ip = line.split()[0]
if ip not in ips:
ips[ip]=1
else:
ips[ip]+=1
point = f.tell()#记录读完之后文件指针
for ip,count in ips.items():#判断ip出现的次数是否大于200
if count>=200:
print(‘【%s】加入黑名单‘%ip)
time.sleep(60)

监控服务器日志

标签:+=   readline   seek   日志   count   utf-8   字典   lines   else   

原文地址:https://www.cnblogs.com/wangtingting920416/p/10025739.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!