forked from sh-edraft.de/sh_discord_bot
Improved logging
This commit is contained in:
@@ -20,15 +20,15 @@ class CustomFileLoggerABC(Logger, ABC):
|
||||
def _begin_log(self):
|
||||
console_level = self._console.value
|
||||
self._console = LoggingLevelEnum.OFF
|
||||
self.info(__name__, f'Starting...\n')
|
||||
self.info(__name__, f'Starting...')
|
||||
self._console = LoggingLevelEnum(console_level)
|
||||
|
||||
def _get_string(self, name_list_as_str: str, level: LoggingLevelEnum, message: str) -> str:
|
||||
names = name_list_as_str.split(' ')
|
||||
log_level = level.name
|
||||
string = f'<{self._get_datetime_now()}> [ {log_level} ] '
|
||||
string = f'<{self._get_datetime_now()}> [ {log_level} ]'
|
||||
for name in names:
|
||||
string += f'[ {name} ] '
|
||||
string += f' [ {name} ]'
|
||||
string += f': {message}'
|
||||
return string
|
||||
|
||||
|
0
src/bot_core/helper/__init__.py
Normal file
0
src/bot_core/helper/__init__.py
Normal file
9
src/bot_core/helper/log_message_helper.py
Normal file
9
src/bot_core/helper/log_message_helper.py
Normal file
@@ -0,0 +1,9 @@
|
||||
import discord
|
||||
|
||||
|
||||
class LogMessageHelper:
|
||||
|
||||
@staticmethod
|
||||
def get_log_string(message: discord.Message):
|
||||
content = message.content.replace("\n", "\n\t")
|
||||
return f'{message.author} @ {message.channel} -> \n\t{content}'
|
11
src/bot_core/logging/database_logger.py
Normal file
11
src/bot_core/logging/database_logger.py
Normal file
@@ -0,0 +1,11 @@
|
||||
from cpl_core.configuration import ConfigurationABC
|
||||
from cpl_core.environment import ApplicationEnvironmentABC
|
||||
from cpl_core.time import TimeFormatSettings
|
||||
|
||||
from bot_core.abc.custom_file_logger_abc import CustomFileLoggerABC
|
||||
|
||||
|
||||
class DatabaseLogger(CustomFileLoggerABC):
|
||||
|
||||
def __init__(self, config: ConfigurationABC, time_format: TimeFormatSettings, env: ApplicationEnvironmentABC):
|
||||
CustomFileLoggerABC.__init__(self, 'Database', config, time_format, env)
|
@@ -5,7 +5,7 @@ from cpl_core.time import TimeFormatSettings
|
||||
from bot_core.abc.custom_file_logger_abc import CustomFileLoggerABC
|
||||
|
||||
|
||||
class EventLogger(CustomFileLoggerABC):
|
||||
class MessageLogger(CustomFileLoggerABC):
|
||||
|
||||
def __init__(self, config: ConfigurationABC, time_format: TimeFormatSettings, env: ApplicationEnvironmentABC):
|
||||
CustomFileLoggerABC.__init__(self, 'Event', config, time_format, env)
|
||||
CustomFileLoggerABC.__init__(self, 'Message', config, time_format, env)
|
@@ -4,19 +4,20 @@ from typing import Union
|
||||
import discord
|
||||
from cpl_core.configuration.configuration_abc import ConfigurationABC
|
||||
from cpl_core.database.context.database_context_abc import DatabaseContextABC
|
||||
from cpl_core.logging import LoggerABC
|
||||
from cpl_discord.service import DiscordBotServiceABC
|
||||
from cpl_query.extension import List
|
||||
from discord.ext.commands import Context
|
||||
|
||||
from bot_core.abc.message_service_abc import MessageServiceABC
|
||||
from bot_core.configuration.server_settings import ServerSettings
|
||||
from bot_core.helper.log_message_helper import LogMessageHelper
|
||||
from bot_core.logging.message_logger import MessageLogger
|
||||
from bot_data.abc.client_repository_abc import ClientRepositoryABC
|
||||
|
||||
|
||||
class MessageService(MessageServiceABC):
|
||||
|
||||
def __init__(self, config: ConfigurationABC, logger: LoggerABC, bot: DiscordBotServiceABC, clients: ClientRepositoryABC, db: DatabaseContextABC):
|
||||
def __init__(self, config: ConfigurationABC, logger: MessageLogger, bot: DiscordBotServiceABC, clients: ClientRepositoryABC, db: DatabaseContextABC):
|
||||
self._config = config
|
||||
self._logger = logger
|
||||
self._bot = bot
|
||||
@@ -35,7 +36,7 @@ class MessageService(MessageServiceABC):
|
||||
server_st: ServerSettings = self._config.get_configuration(f'ServerSettings_{message.guild.id}')
|
||||
if not mass_delete:
|
||||
await asyncio.sleep(server_st.message_delete_timer)
|
||||
self._logger.debug(__name__, f'Try to delete message:\n\t{message}\n\t{message.content}')
|
||||
self._logger.debug(__name__, f'Try to delete message: {LogMessageHelper.get_log_string(message)}')
|
||||
guild_id = message.guild.id
|
||||
try:
|
||||
await message.delete()
|
||||
|
Reference in New Issue
Block a user