Spaces:
Paused
Paused
File size: 1,602 Bytes
a5784e9 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | import logging
import logging.handlers
import os
import sys
from launcher.config import LAUNCHER_LOG_FILE_PATH, LOG_DIR
from logging_utils import GridFormatter, PlainGridFormatter, set_source
logger = logging.getLogger("CamoufoxLauncher")
def setup_launcher_logging(log_level: int = logging.INFO) -> None:
"""
Set up launcher logging system (using GridFormatter)
Args:
log_level: Log level
"""
os.makedirs(LOG_DIR, exist_ok=True)
# Set source to LAUNCHER
set_source("LAUNCHER")
# Use PlainGridFormatter for file logging
file_log_formatter = PlainGridFormatter()
# Use GridFormatter for console (colored output)
console_log_formatter = GridFormatter(show_tree=True, colorize=True)
if logger.hasHandlers():
logger.handlers.clear()
logger.setLevel(log_level)
logger.propagate = False
if os.path.exists(LAUNCHER_LOG_FILE_PATH):
try:
os.remove(LAUNCHER_LOG_FILE_PATH)
except OSError:
pass
file_handler = logging.handlers.RotatingFileHandler(
LAUNCHER_LOG_FILE_PATH,
maxBytes=10 * 1024 * 1024, # 10MB
backupCount=5,
encoding="utf-8",
mode="w",
)
file_handler.setFormatter(file_log_formatter)
logger.addHandler(file_handler)
stream_handler = logging.StreamHandler(sys.stderr)
stream_handler.setFormatter(console_log_formatter)
logger.addHandler(stream_handler)
logger.info(f"Log level set to: {logging.getLevelName(logger.getEffectiveLevel())}")
logger.debug(f"Log file path: {LAUNCHER_LOG_FILE_PATH}")
|