import logging import logging.handlers from pathlib import Path def setup_logging(): Path("logs").mkdir(exist_ok=True) root_logger = logging.getLogger() root_logger.setLevel(logging.INFO) root_logger.handlers.clear() formatter = logging.Formatter( "%(asctime)s %(levelname)s %(name)s - %(message)s" ) console = logging.StreamHandler() console.setFormatter(formatter) root_logger.addHandler(console) file_handler = logging.handlers.RotatingFileHandler( "logs/application.log", maxBytes=10 * 1024 * 1024, backupCount=5 ) file_handler.setFormatter(formatter) root_logger.addHandler(file_handler) def get_logger(name): return logging.getLogger(name)