b553c957f3
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
33 lines
1.2 KiB
Python
33 lines
1.2 KiB
Python
# utils/logger.py
|
|
import logging
|
|
import sys
|
|
from pathlib import Path
|
|
from typing import Optional
|
|
|
|
def setup_logger(log_file: Optional[Path] = None) -> logging.Logger:
|
|
""" Настраивает логирование работы приложения в консоль и в файл comfygallery.log """
|
|
logger = logging.getLogger("ComfyGallery")
|
|
logger.setLevel(logging.DEBUG)
|
|
|
|
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
|
|
|
|
# Вывод в консоль
|
|
console_handler = logging.StreamHandler(sys.stdout)
|
|
console_handler.setFormatter(formatter)
|
|
logger.addHandler(console_handler)
|
|
|
|
# Вывод в файл
|
|
if log_file is None:
|
|
log_file = Path("comfygallery.log")
|
|
|
|
try:
|
|
log_file.parent.mkdir(parents=True, exist_ok=True)
|
|
file_handler = logging.FileHandler(log_file, encoding='utf-8')
|
|
file_handler.setFormatter(formatter)
|
|
logger.addHandler(file_handler)
|
|
except Exception as e:
|
|
logger.error(f"Не удалось инициализировать файловый логгер: {e}")
|
|
|
|
return logger
|
|
|
|
logger = setup_logger() |