mirror of https://github.com/D4-project/d4-core
chg: [server] add blacklist + add ip-uuid stats
parent
57981dd452
commit
6472ba8a21
|
@ -57,9 +57,9 @@ if __name__ == "__main__":
|
||||||
break
|
break
|
||||||
filepath = os.path.join(dir_path, filename)
|
filepath = os.path.join(dir_path, filename)
|
||||||
|
|
||||||
if os.path.getsize(filepath) > 500000000: #bytes
|
#if os.path.getsize(filepath) > 500000000: #bytes
|
||||||
gzip_file(filepath)
|
# gzip_file(filepath)
|
||||||
filename = data_timestamp
|
# filename = data_timestamp
|
||||||
|
|
||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
os.makedirs(dir_path)
|
os.makedirs(dir_path)
|
||||||
|
|
|
@ -41,6 +41,9 @@ class Echo(Protocol, TimeoutMixin):
|
||||||
def dataReceived(self, data):
|
def dataReceived(self, data):
|
||||||
self.resetTimeout()
|
self.resetTimeout()
|
||||||
ip, source_port = self.transport.client
|
ip, source_port = self.transport.client
|
||||||
|
# check blacklisted_ip
|
||||||
|
if redis_server.sismember('blacklisted_ip', ip):
|
||||||
|
self.transport.abortConnection()
|
||||||
#print(ip)
|
#print(ip)
|
||||||
#print(source_port)
|
#print(source_port)
|
||||||
self.process_header(data, ip, source_port)
|
self.process_header(data, ip, source_port)
|
||||||
|
@ -164,6 +167,8 @@ class Echo(Protocol, TimeoutMixin):
|
||||||
redis_server.xadd('stream:{}'.format(data_header['type']), {'message': data[header_size:], 'uuid': data_header['uuid_header'], 'timestamp': data_header['timestamp'], 'version': data_header['version']})
|
redis_server.xadd('stream:{}'.format(data_header['type']), {'message': data[header_size:], 'uuid': data_header['uuid_header'], 'timestamp': data_header['timestamp'], 'version': data_header['version']})
|
||||||
redis_server.sadd('daily_uuid:{}'.format(date), data_header['uuid_header'])
|
redis_server.sadd('daily_uuid:{}'.format(date), data_header['uuid_header'])
|
||||||
redis_server.zincrby('stat_uuid_ip:{}:{}'.format(date, data_header['uuid_header']), 1, ip)
|
redis_server.zincrby('stat_uuid_ip:{}:{}'.format(date, data_header['uuid_header']), 1, ip)
|
||||||
|
redis_server.sadd('daily_ip:{}'.format(date), ip)
|
||||||
|
redis_server.zincrby('stat_ip_uuid:{}:{}'.format(date, ip), 1, data_header['uuid_header'])
|
||||||
#with open(data_header['uuid_header'], 'ab') as f:
|
#with open(data_header['uuid_header'], 'ab') as f:
|
||||||
# f.write(data[header_size:])
|
# f.write(data[header_size:])
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Reference in New Issue