diff --git a/src/config.py b/src/config.py index a6920d0..2cacfc8 100644 --- a/src/config.py +++ b/src/config.py @@ -4,6 +4,9 @@ MODULES_DIR = 'modules' # Название файла db sqlite DATABASE_NAME = 'users.db' +# Название файла для логов +LOG_FILE_NAME = 'bot.log' + # Сообщения команд COMMAND_MESSAGES = { 'start': 'Бот-модератор для чата @linux_gaming_ru', diff --git a/src/logger.py b/src/logger.py index cd9e537..56439ef 100644 --- a/src/logger.py +++ b/src/logger.py @@ -2,6 +2,8 @@ import logging import time import os +from config import LOG_FILE_NAME + class ColoredFormatter(logging.Formatter): # Цветные логи (для терминала) LEVEL_COLORS = { logging.INFO: '\033[92m', @@ -38,6 +40,13 @@ class UncoloredFormatter(logging.Formatter): # Бесцветные логи (д return f"[{time_str}] [{date_str}] [{level_name}] {record.getMessage()}" def setup_logging(): # Инициализирует систему логирования + + # Добавляем разделитель для нового сеанса + if os.path.exists(LOG_FILE_NAME): + with open(LOG_FILE_NAME, "a", encoding="utf-8") as f: + f.write("\n\n" + "=" * 60 + "\n") + f.write(f"{'ЗАПУЩЕН НОВЫЙ СЕАНС':^60}\n") + f.write("=" * 60 + "\n\n") # Создаем корневой логгер logger = logging.getLogger() @@ -49,7 +58,7 @@ def setup_logging(): # Инициализирует систему логиро console_handler.setFormatter(ColoredFormatter()) # Сохраняем логи в файл - file_handler = logging.FileHandler("bot.log", encoding='utf-8') + file_handler = logging.FileHandler(LOG_FILE_NAME, encoding='utf-8') file_handler.setFormatter(UncoloredFormatter()) logger.addHandler(console_handler) diff --git a/src/main.py b/src/main.py index dee6bc6..c01eb1b 100644 --- a/src/main.py +++ b/src/main.py @@ -68,9 +68,9 @@ async def load_modules(): # Загружает все модули из дире if hasattr(module, "register_handlers"): module.register_handlers(bot) loaded_count += 1 - logger.info(f"Модуль {module_name} успешно загружен") + logger.info(f"Модуль {module_name} успешно загружен.") else: - logger.warning(f"Модуль {module_name} не содержит функцию register_handlers") + logger.warning(f"Модуль {module_name} не содержит функцию register_handlers.") except Exception as e: logger.error(f"Ошибка при загрузке модуля {module_name}: {str(e)}") logger.info(f"Загружено модулей: {loaded_count} шт. Бот запущен.")