import sys import traceback from pathlib import Path import logging from logging.handlers import RotatingFileHandler import lib.api.util.CONFIG as CONFIG lv_logger = logging.getLogger() def fn_start_logging(): try: # Logger File Path Configuration lv_filepath = Path(CONFIG.LOG_FILE) lv_filepath.parent.mkdir(exist_ok=True, parents=True) # Logging Level Configuration lv_logger.setLevel(CONFIG.DEFAULT_LEVELS[CONFIG.FILE_LOG_LEVEL]) # File Handler Configuration lv_fileHandler = RotatingFileHandler(CONFIG.LOG_FILE, maxBytes=(1048576*5), backupCount=7) lv_fileHandler.setLevel(CONFIG.DEFAULT_LEVELS[CONFIG.FILE_LOG_LEVEL]) lv_fileHandler.setFormatter(logging.Formatter(CONFIG.FILE_LOG_FORMAT)) lv_logger.addHandler(lv_fileHandler) # Console Handler Configuration lv_consoleHandler = logging.StreamHandler(sys.stdout) lv_consoleHandler.setLevel(CONFIG.DEFAULT_LEVELS[CONFIG.CONSOLE_LOG_LEVEL]) lv_consoleHandler.setFormatter(logging.Formatter(CONFIG.CONSOLE_LOG_FORMAT)) lv_logger.addHandler(lv_consoleHandler) # Confirmation Message lv_logger.info("FlaskServer Logging Started") except Exception as e: print("Error in fn_start_logging: ", e) print("Error in fn_start_logging: ", traceback.format_exc()) return None