updated logging
This commit is contained in:
@ -4,6 +4,9 @@ MODULES_DIR = 'modules'
|
||||
# Название файла db sqlite
|
||||
DATABASE_NAME = 'users.db'
|
||||
|
||||
# Название файла для логов
|
||||
LOG_FILE_NAME = 'bot.log'
|
||||
|
||||
# Сообщения команд
|
||||
COMMAND_MESSAGES = {
|
||||
'start': 'Бот-модератор для чата @linux_gaming_ru',
|
||||
|
@ -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)
|
||||
|
@ -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} шт. Бот запущен.")
|
||||
|
Reference in New Issue
Block a user