Source code for pycmtensor.logger

# logger.py
"""PyCMTensor logger module"""
import logging

__all__ = [
    "set_level",
    "get_effective_level",
    "log",
    "debug",
    "info",
    "warning",
    "error",
    "critical",
]

VERBOSITY_DEFAULT = logging.INFO

DEBUG = logging.DEBUG
INFO = logging.INFO
WARNING = logging.WARNING
ERROR = logging.ERROR
CRITICAL = logging.CRITICAL


[docs]def set_level(level): """Set the level of the logger""" main_logger.setLevel(level)
[docs]def get_effective_level(): """Gets the level of the logger""" return main_logger.getEffectiveLevel()
def _get_console_handler(): handler = logging.StreamHandler() handler.setFormatter(default_formatter) return handler def _get_file_handler(): handler = logging.StreamHandler() handler.setFormatter(default_formatter) return handler def get_default_logger(name, level): logger = logging.getLogger(name) logger.addHandler(_get_console_handler()) logger.setLevel(level) logger.propagate = False return logger default_formatter = logging.Formatter( "{asctime:s} [{levelname:s}] {message:s}", style="{", datefmt="%H:%M:%S", ) main_logger = get_default_logger("pycmtensor", VERBOSITY_DEFAULT) log = main_logger.log debug = main_logger.debug info = main_logger.info warning = main_logger.warning error = main_logger.error critical = main_logger.critical