def init(debugLevel, log_colors=None): """Init color logs as the global logging.""" # pylint: disable=import-outside-toplevel from colorlog.colorlog import ColoredFormatter global SYS_OUT_HANDLER # override the formatter it creates with colorlog logging._acquireLock() try: root = logging.getLogger() root.setLevel(debugLevel) SYS_OUT_HANDLER = logging.StreamHandler(sys.stdout) logger.addHandler(SYS_OUT_HANDLER) handler = SYS_OUT_HANDLER # Workaround logging disabled for level 0 print("Current logging.level: {}".format(handler.level)) if handler.level == 0: logging.disable(-1) if isinstance(handler, logging.StreamHandler): print("Set logging.level: {}".format(debugLevel)) handler.setLevel(debugLevel) handler.addFilter(LoggingFilter()) handler.setFormatter( ColoredFormatter( fmt=LOG_FORMAT, datefmt=DATE_FORMAT, log_colors=log_colors if log_colors is None else default_log_colors, ) ) finally: logging._releaseLock()
def basicConfig(**kwargs): """This calls basicConfig() and then overrides the formatter it creates""" logging.basicConfig(**kwargs) logging._acquireLock() try: stream = logging.root.handlers[0] stream.setFormatter( ColoredFormatter(kwargs.get('format', BASIC_FORMAT))) finally: logging._releaseLock()
def main(log_level): handler = logging.StreamHandler() handler.setLevel(log_level) handler.setFormatter( ColoredFormatter( "%(log_color)s%(asctime)s.%(msecs)03d %(levelname)-8s (%(lineno)4d) %(name)-30s: " "%(message)s%(reset)s", datefmt="%H:%M:%S")) root_logger = logging.getLogger() root_logger.setLevel(log_level) root_logger.addHandler(handler)
def basicConfig(**kwargs): """Call ``logging.basicConfig`` and override the formatter it creates.""" logging.basicConfig(**kwargs) logging._acquireLock() try: stream = logging.root.handlers[0] stream.setFormatter( ColoredFormatter(fmt=kwargs.get('format', BASIC_FORMAT), datefmt=kwargs.get('datefmt', None))) finally: logging._releaseLock()
def basicConfig(style='%', log_colors=None, reset=True, secondary_log_colors=None, **kwargs): """Call ``logging.basicConfig`` and override the formatter it creates.""" logging.basicConfig(**kwargs) logging._acquireLock() try: stream = logging.root.handlers[0] stream.setFormatter( ColoredFormatter(fmt=kwargs.get('format', BASIC_FORMAT), datefmt=kwargs.get('datefmt', None), style=style, log_colors=log_colors, reset=reset, secondary_log_colors=secondary_log_colors)) finally: logging._releaseLock()