Files
SCAII_Sync_Client/logger_utils.py
2026-07-09 13:38:20 -05:00

39 lines
1.3 KiB
Python

import logging
import os
import sys
def setup_logger():
# Obtener la ruta del ejecutable o del script
if getattr(sys, 'frozen', False):
# Si es un ejecutable generado por PyInstaller
application_path = os.path.dirname(sys.executable)
else:
# Si es el script de Python normal
application_path = os.path.dirname(os.path.abspath(__file__))
log_file = os.path.join(application_path, "debug_sync.log")
# Crear el logger
logger = logging.getLogger("SCAII_Sync")
logger.setLevel(logging.DEBUG)
# Evitar duplicados si se llama varias veces
if not logger.handlers:
# Formato: [2024-05-06 10:00:00] [INFO] Mensaje
formatter = logging.Formatter('[%(asctime)s] [%(levelname)s] [%(name)s] %(message)s', datefmt='%Y-%m-%d %H:%M:%S')
# Handler para archivo (modo 'a' para anexar, 'w' para sobrescribir en cada inicio)
file_handler = logging.FileHandler(log_file, mode='w', encoding='utf-8')
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
# Handler para consola
console_handler = logging.StreamHandler()
console_handler.setFormatter(formatter)
logger.addHandler(console_handler)
return logger
# Instancia global para importar en otros archivos
log = setup_logger()