""" Logger setup utility """ import logging import sys from flask import Flask def setup_logger(app: Flask): """ Setup application logger Args: app: Flask application instance """ config = app.config # Get log level log_level = getattr(logging, config.get('log_level', 'INFO').upper(), logging.INFO) # Configure logger logger = logging.getLogger('videoSummary') logger.setLevel(log_level) # Create formatter if config.get('log_format') == 'json': formatter = logging.Formatter( '{"time": "%(asctime)s", "level": "%(levelname)s", "message": "%(message)s", "module": "%(name)s"}' ) else: formatter = logging.Formatter( '%(asctime)s - %(name)s - %(levelname)s - %(message)s' ) # Create handler if config.get('log_output') == 'stdout' or not config.get('log_output'): handler = logging.StreamHandler(sys.stdout) else: handler = logging.FileHandler(config.get('log_output')) handler.setFormatter(formatter) logger.addHandler(handler) app.logger = logger