import logging
import sys
from ...logger.logger_interface import LoggerInterface
from .log_level import LogLevel
[docs]
class Printer(LoggerInterface):
logger: logging.Logger
def __init__(self, name: str, level: LogLevel):
logging.getLogger(name).addHandler(logging.NullHandler())
self.logger = logging.getLogger(name)
handler = logging.StreamHandler(sys.stdout)
handler.setFormatter(
logging.Formatter("%(asctime)s %(levelname)8s %(message)s")
)
handler.setLevel(level.value)
self.logger.setLevel(level.value)
self.logger.addHandler(handler)
[docs]
def debug(self, *args, **kwargs):
self.logger.debug(*args, **kwargs)
[docs]
def info(self, *args, **kwargs):
self.logger.info(*args, **kwargs)
[docs]
def warning(self, *args, **kwargs):
self.logger.warning(*args, **kwargs)
[docs]
def error(self, *args, **kwargs):
self.logger.error(*args, **kwargs)