From ed5f2231fb5622ef429619112cc08dd94b1dfa24 Mon Sep 17 00:00:00 2001 From: Robson Date: Fri, 26 Jan 2024 13:05:50 -0300 Subject: [PATCH 1/2] feat: add logs to repo --- requirements.txt | 1 + src/logger.py | 32 ++++++++++++++++++++++++++++++++ src/main.py | 11 ++++++++--- 3 files changed, 41 insertions(+), 3 deletions(-) create mode 100644 src/logger.py diff --git a/requirements.txt b/requirements.txt index e1a2470..67870b8 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ +colorlog==6.8.2 discord==2.3.2 loadotenv==1.0.1 pre-commit==3.6.0 diff --git a/src/logger.py b/src/logger.py new file mode 100644 index 0000000..0776f17 --- /dev/null +++ b/src/logger.py @@ -0,0 +1,32 @@ +import logging + +import colorlog + + +def setup_logger(logger_name, level=logging.INFO): + date_colored = '%(bold_black)s%(asctime)s' + level_colored = '%(log_color)s%(levelname)7s%(reset)s' + file_path_colored = '%(purple)s%(filename)s:%(name)s:%(funcName)s%(reset)s' + formatting = f'{date_colored} {level_colored} {file_path_colored} | %(message)s' + + color_formatter = colorlog.ColoredFormatter( + formatting, + datefmt='%Y-%m-%d %H:%M:%S', + reset=True, + log_colors={ + 'DEBUG': 'cyan', + 'INFO': 'green', + 'WARNING': 'yellow', + 'ERROR': 'red', + 'CRITICAL': 'bold_red', + }, + ) + + handler = colorlog.StreamHandler() + handler.setFormatter(color_formatter) + + logger = logging.getLogger(logger_name) + logger.addHandler(handler) + logger.setLevel(level) + + return logger diff --git a/src/main.py b/src/main.py index e0c6568..3d246bd 100644 --- a/src/main.py +++ b/src/main.py @@ -2,20 +2,24 @@ import discord +from src.logger import setup_logger + intents = discord.Intents.default() intents.typing = False intents.presences = False intents.members = True intents.message_content = True +_log = setup_logger('src.main') + class MyClient(discord.Client): async def on_ready(self): - print(f'Logged on as {self.user}!') + _log.info(f'Logged on as {self.user}!') async def on_message(self, message): - print('message from {0.author}: {0.content}'.format(message)) - if message.content == ('!roleta'): + _log.info('message from {0.author}: {0.content}'.format(message)) + if message.content == '!roleta': await message.channel.send( f'O sorteado foi: {self.users.copy()[random.randint(0, len(message.guild.members) - 1)]}', ) @@ -23,5 +27,6 @@ async def on_message(self, message): if __name__ == '__main__': import settings + client = MyClient(intents=intents) client.run(settings.DISCORD_TOKEN) From 2946e903014725b1aa550236b227d50f178138cb Mon Sep 17 00:00:00 2001 From: Robson Date: Fri, 26 Jan 2024 13:06:26 -0300 Subject: [PATCH 2/2] refactor: change settings directory --- src/main.py | 2 +- settings.py => src/settings.py | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename settings.py => src/settings.py (100%) diff --git a/src/main.py b/src/main.py index 3d246bd..1bff007 100644 --- a/src/main.py +++ b/src/main.py @@ -26,7 +26,7 @@ async def on_message(self, message): if __name__ == '__main__': - import settings + from src import settings client = MyClient(intents=intents) client.run(settings.DISCORD_TOKEN) diff --git a/settings.py b/src/settings.py similarity index 100% rename from settings.py rename to src/settings.py