From 3f30f13ad784e57bfeb8701120cb6ea3ed5ae635 Mon Sep 17 00:00:00 2001 From: phixxy Date: Fri, 2 Feb 2024 22:28:44 -0800 Subject: [PATCH] should have logging and startup fixed --- sparkytron3000.py | 27 +++++++++++++-------------- src/logger.py | 5 +++++ 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/sparkytron3000.py b/sparkytron3000.py index 11d339f..fdfd7c1 100644 --- a/sparkytron3000.py +++ b/sparkytron3000.py @@ -7,6 +7,7 @@ from dotenv import load_dotenv import aiohttp import src.logger as logger + load_dotenv() discord_token = os.getenv('discord_token') @@ -23,17 +24,15 @@ async def folder_setup(): if not os.path.exists(folder_name): os.mkdir(folder_name) except Exception as e: - logger.exception(f"Error setting up folders: {e}") + bot.logger.exception(f"Error setting up folders: {e}") async def delete_all_files(path): try: for filename in os.listdir(path): - if os.path.isdir(path+filename): - shutil.rmtree(path+filename) - elif os.path.isfile(path+filename): + if os.path.isfile(path+filename): os.remove(path+filename) except Exception as e: - logger.exception(f"Error deleting files: {e}") + bot.logger.exception(f"Error deleting files: {e}") @tasks.loop(seconds=1) # Run the task every second async def task_loop(): @@ -42,9 +41,9 @@ async def task_loop(): #Run daily tasks if current_time.tm_hour == 0 and current_time.tm_min == 0 and current_time.tm_sec == 0: await delete_all_files("tmp/") - logger.info("Deleted tmp/ files.") + bot.logger.info("Deleted tmp/ files.") except Exception as e: - logger.exception(f"Error in task loop: {e}") + bot.logger.exception(f"Error in task loop: {e}") async def create_session(): return aiohttp.ClientSession() @@ -64,28 +63,28 @@ async def on_resumed(): async def on_disconnect(): await close_session(bot.http_session) -def logger_setup(): +def logger_setup(logger): if not os.path.isdir("logs"): os.mkdir("logs") with open("logs/info.log", "a") as f: pass logger = logger.logging.getLogger("bot") - bot.logger = logger + return logger @bot.event async def on_ready(): try: - await folder_setup() await delete_all_files("tmp/") + await folder_setup() # Import plugins from extensions folder for plugin_file in os.listdir('extensions/'): if plugin_file[0] != '_' and plugin_file[-3:] == '.py': await bot.load_extension(f'extensions.{plugin_file[:-3]}') - logger.info('We have logged in as {0.user}'.format(bot)) + bot.logger.info('We have logged in as {0.user}'.format(bot)) task_loop.start() except Exception as e: - logger.warning(f"Error in on_ready: {e}") + bot.logger.warning(f"Error in on_ready: {e}") raise @bot.event @@ -95,10 +94,10 @@ async def on_message(ctx): except commands.CommandNotFound: pass except Exception as e: - logger.warning(f"Error processing commands: {e}") + bot.logger.warning(f"Error processing commands: {e}") +bot.logger = logger_setup(logger) try: - logger_setup() bot.run(discord_token, root_logger=True) except Exception as e: logger.critical(f"Fatal error running bot: {e}") diff --git a/src/logger.py b/src/logger.py index cf043d0..206ffff 100644 --- a/src/logger.py +++ b/src/logger.py @@ -1,4 +1,5 @@ import logging +import os from logging.config import dictConfig LOGGING_CONFIG = { @@ -40,4 +41,8 @@ LOGGING_CONFIG = { }, } +if not os.path.isdir("logs"): + os.mkdir("logs") +with open("logs/info.log", "a") as f: + pass dictConfig(LOGGING_CONFIG) \ No newline at end of file