multithread

This commit is contained in:
2025-07-19 01:03:47 +03:00
parent 840e2c4d6a
commit fe1a022609

View File

@@ -2,6 +2,8 @@
# <IMPORTS>
import logging
import os
from pathlib import Path
from typing import Optional
from .database import DatabaseLogHandler, DatabaseManager
from .settings import settings
@@ -23,8 +25,25 @@ def setup_logging(run_id: str, db_manager: Optional[DatabaseManager] = None):
"""Настраивает систему логирования проекта."""
# <CORE_LOGIC>
log_format = '[%(asctime)s] [%(levelname)s] :: %(message)s'
# <ACTION name="create_log_directory">
# Создаем директорию для логов, если она не существует.
os.makedirs(settings.log_dir, exist_ok=True)
# </ACTION>
# <ACTION name="configure_file_handler">
# Добавляем обработчик для записи логов в файл.
log_file_name = f"run_{run_id}.log"
file_handler = logging.FileHandler(settings.log_dir / log_file_name)
file_handler.setLevel(logging.INFO)
file_handler.setFormatter(logging.Formatter(log_format))
root_logger = logging.getLogger('')
root_logger.addHandler(file_handler)
# </ACTION>
logging.basicConfig(
level=logging.INFO,
level=logging.DEBUG,
format=log_format,
datefmt='%Y-%m-%d %H:%M:%S',
force=True # Перезаписывает любую существующую конфигурацию