Spaces:
Paused
Paused
| import logging | |
| from pathlib import Path | |
| def setup_logger(config: dict, name: str = None) -> logging.Logger: | |
| """Set up logger with configuration from config file.""" | |
| logger = logging.getLogger(name or __name__) | |
| # Set level from config | |
| level = getattr(logging, config["logging"]["level"].upper()) | |
| logger.setLevel(level) | |
| # Create logs directory if it doesn't exist | |
| log_path = Path(config["folders"]["logs"]) | |
| log_path.mkdir(exist_ok=True) | |
| # Create handlers | |
| file_handler = logging.FileHandler(log_path / config["logging"]["file"]) | |
| console_handler = logging.StreamHandler() | |
| # Create formatter | |
| formatter = logging.Formatter(config["logging"]["format"]) | |
| file_handler.setFormatter(formatter) | |
| console_handler.setFormatter(formatter) | |
| # Add handlers | |
| logger.addHandler(file_handler) | |
| logger.addHandler(console_handler) | |
| return logger |