import logging import os from anaxi.constants import PATHS def get_anaxi_logger(name: str) -> None: logger = logging.getLogger(name) anaxi_formatter = logging.Formatter( fmt="%(asctime)s - [%(levelname)s] - %(filename)s - L%(lineno)d - %(message)s" ) console_handler = logging.StreamHandler() console_handler.setFormatter(anaxi_formatter) logger.addHandler(console_handler) if not os.path.exists(os.path.dirname(PATHS.logging_file)): os.makedirs(os.path.dirname(PATHS.logging_file)) file_handler = logging.FileHandler(filename=PATHS.logging_file) file_handler.setFormatter(anaxi_formatter) logger.addHandler(file_handler) logger.setLevel(logging.INFO) return logger