#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
Модуль для настройки логирования
"""

import os
import logging
from logging.handlers import RotatingFileHandler

def setup_logging(log_level=logging.INFO) -> None:
    """
    Настройка логирования с ротацией файлов
    
    Args:
        log_level: Уровень логирования (по умолчанию INFO)
    """
    # Создание директории для логов, если её нет
    logs_dir = os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(__file__))), "logs")
    os.makedirs(logs_dir, exist_ok=True)
    
    # Путь к файлу лога
    log_file = os.path.join(logs_dir, "synology_bot.log")
    
    # Базовая настройка логгера
    logging.basicConfig(
        level=log_level,
        format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
        handlers=[
            RotatingFileHandler(
                log_file, 
                maxBytes=10485760,  # 10MB
                backupCount=3
            ),
            logging.StreamHandler()
        ]
    )
    
    # Снижаем уровень логирования для некоторых модулей
    logging.getLogger("httpx").setLevel(logging.WARNING)
    logging.getLogger("telegram").setLevel(logging.WARNING)
    
    # Логирование старта системы
    logging.info("Logging system initialized")
