mirror of
https://github.com/N1ngYu/SaltBot.git
synced 2025-09-28 08:42:40 +08:00
42 lines
1.3 KiB
Python
42 lines
1.3 KiB
Python
class UsageCount:
|
|
handled_user_count = dict(unknown=0)
|
|
|
|
def add(self, wxid="unknown"):
|
|
if wxid not in self.handled_user_count:
|
|
self.handled_user_count[wxid] = 0
|
|
self.handled_user_count[wxid] += 1
|
|
|
|
def get(self, wxid="unknown"):
|
|
my_count = 0
|
|
if wxid is not None:
|
|
my_count = self.handled_user_count.get(wxid, 0)
|
|
return len(self.handled_user_count.keys()) - 1, sum(self.handled_user_count.values()), my_count
|
|
|
|
|
|
class NetworkCount:
|
|
average_delay = 0
|
|
request_failed_count = 0
|
|
request_count = 0
|
|
zlib_compress_skip_count = 0
|
|
|
|
def update_average_delay(self, delay: int):
|
|
if self.request_count == 0:
|
|
self.average_delay = delay
|
|
else:
|
|
self.average_delay = (self.average_delay * self.request_count + delay) / (self.request_count + 1)
|
|
|
|
def add_request_count(self):
|
|
self.request_count += 1
|
|
|
|
def add_failed_request_count(self):
|
|
self.request_count -= 1
|
|
|
|
def add_zlib_compress_skip_count(self):
|
|
self.zlib_compress_skip_count += 1
|
|
|
|
def add_request_failed_count(self):
|
|
self.request_failed_count += 1
|
|
|
|
def get_network_status(self):
|
|
return self.request_count, self.request_failed_count, self.zlib_compress_skip_count, self.average_delay
|