import logging
from logging.handlers import RotatingFileHandler
import os

# Crear carpeta de logs si no existe
LOG_DIR = "logs"
os.makedirs(LOG_DIR, exist_ok=True)

# Ruta del archivo de log
LOG_FILE = os.path.join(LOG_DIR, "vida_backend.log")

# Configuración de logger global
logger = logging.getLogger("vidaLogger")
logger.setLevel(logging.INFO)

# Evitar duplicados
if not logger.handlers:
    # Handler para archivo rotativo (5 archivos de 1 MB máximo)
    file_handler = RotatingFileHandler(LOG_FILE, maxBytes=1_000_000, backupCount=5)
    file_handler.setLevel(logging.INFO)

    # Handler para consola
    console_handler = logging.StreamHandler()
    console_handler.setLevel(logging.INFO)

    # Formato común
    formatter = logging.Formatter("%(asctime)s [%(levelname)s] %(message)s")
    file_handler.setFormatter(formatter)
    console_handler.setFormatter(formatter)

    logger.addHandler(file_handler)
    logger.addHandler(console_handler)