Skip to content

log_formatter

This module handles setting up the extensive logging system in Merlin.

setup_logging(logger, log_level='INFO', colors=True)

Setup and configure Python logging.

Parameters:

Name Type Description Default
logger Logger

A logging.Logger object.

required
log_level str

Logger level.

'INFO'
colors bool

If True use colored logs.

True
Source code in merlin/log_formatter.py
def setup_logging(logger: logging.Logger, log_level: str = "INFO", colors: bool = True):
    """
    Setup and configure Python logging.

    Args:
        logger: A logging.Logger object.
        log_level: Logger level.
        colors: If True use colored logs.
    """
    formatter = logging.Formatter()
    handler = logging.StreamHandler(sys.stdout)
    handler.setFormatter(formatter)
    logger.addHandler(handler)

    logger.setLevel(log_level)
    logger.propagate = False

    if colors is True:
        coloredlogs.install(level=log_level, logger=logger, fmt=FORMATS["DEFAULT"])