"""JARVIS logging helper.""" import logging from typing import Optional FORMAT = "[%(asctime)s] [%(name)s] [%(levelname)8s] %(message)s" handler = logging.StreamHandler() LOGGER = None def get_logger(name: str, fmt: Optional[str] = FORMAT) -> logging.Logger: """ Get a pre-configured logger Args: name: Name of the logger """ global LOGGER if not (logger := LOGGER): logger = logging.getLogger(name) formatter = logging.Formatter(fmt) handler.setFormatter(formatter) logger.addHandler(handler) LOGGER = logger return logger