def do_format(args): # todo: we need to manually filter on level! level = logging.getLevelName(args.level.upper()) logger = logging.getLogger('') logger.setLevel(level) handler = logging.StreamHandler(sys.stdout) try: from nicelog.formatters import ColorLineFormatter formatter = ColorLineFormatter( show_date=True, show_function=True, show_filename=True) except: formatter = logging.Formatter("%(levelname)s %(msg)s") handler.setFormatter(formatter) handler.setLevel(logging.DEBUG) logger.addHandler(handler) replay_log(sys.stdin)
try: 10 / 0 except: logger.exception("This is an exception message") del logger, handler # ------------------------------------------------------------ # REPLAY # ------------------------------------------------------------ from nicelog.formatters import ColorLineFormatter import sys stream.seek(0) logger = logging.getLogger('') logger.setLevel(logging.DEBUG) formatter = logging.Formatter("%(levelname)s %(msg)s") handler = logging.StreamHandler(sys.stderr) # handler.setFormatter(ColorLineFormatter()) handler.setFormatter(formatter) handler.setLevel(logging.DEBUG) logger.addHandler(handler) replay_log(stream)