scanner logs

This commit is contained in:
klemek
2021-01-11 18:17:54 +01:00
parent efb6dddce4
commit e7daaed35b
3 changed files with 9 additions and 5 deletions
-2
View File
@@ -36,11 +36,9 @@ class FullScanner(Scanner):
self.compo = Composition()
self.pres = Presence()
self.member_specific = len(self.members) > 0
self.total_msg = 0
return True
def compute_message(self, channel: ChannelLogs, message: MessageLog):
self.total_msg += 1
FrequencyScanner.analyse_message(message, self.freq, self.raw_members)
CompositionScanner.analyse_message(message, self.compo, self.raw_members)
PresenceScanner.analyse_message(channel, message, self.pres, self.raw_members)
-2
View File
@@ -30,12 +30,10 @@ class PresenceScanner(Scanner):
async def init(self, message: discord.Message, *args: str) -> bool:
self.pres = Presence()
self.total_msg = 0
self.member_specific = len(self.members) > 0
return True
def compute_message(self, channel: ChannelLogs, message: MessageLog):
self.total_msg += 1
return PresenceScanner.analyse_message(
channel, message, self.pres, self.raw_members
)
+9 -1
View File
@@ -1,8 +1,10 @@
from abc import ABC, abstractmethod
from typing import List
from datetime import datetime
import logging
import discord
from utils import no_duplicate, get_intro
from utils import no_duplicate, get_intro, delta, deltas
from logs import GuildLogs, ChannelLogs, MessageLog
@@ -89,7 +91,9 @@ class Scanner(ABC):
)
else:
self.msg_count = 0
self.total_msg = 0
self.chan_count = 0
t0 = datetime.now()
for channel in self.channels:
channel_logs = logs.channels[channel.id]
count = sum(
@@ -98,10 +102,13 @@ class Scanner(ABC):
for message_log in channel_logs.messages
]
)
self.total_msg += len(channel_logs.messages)
self.msg_count += count
self.chan_count += 1 if count > 0 else 0
logging.info(f"scan {guild.id} > scanned in {delta(t0):,}ms")
await progress.edit(content="```Computing results...```")
# Display results
t0 = datetime.now()
results = self.get_results(
get_intro(
self.intro_context,
@@ -112,6 +119,7 @@ class Scanner(ABC):
self.chan_count,
)
)
logging.info(f"scan {guild.id} > results in {delta(t0):,}ms")
response = ""
for r in results:
if len(response + "\n" + r) > 2000: