+
+
+class ColoredFormatter (_logging.Formatter):
+ def __init__(self, *args, **kwargs):
+ super(ColoredFormatter, self).__init__(*args, **kwargs)
+ self.colored = None # `None` to use USE_COLOR; True/False to override
+
+ def format(self, record):
+ s = super(ColoredFormatter, self).format(record)
+ if self.colored or (self.colored is None and USE_COLOR):
+ highlight,lowlight,good,bad = standard_colors()
+ if record.levelno <= _logging.DEBUG:
+ color = lowlight
+ elif record.levelno <= GOOD_DEBUG:
+ color = good
+ elif record.levelno <= BAD_DEBUG:
+ color = bad
+ elif record.levelno <= _logging.INFO:
+ color = highlight
+ else:
+ color = bad
+ return color_string(string=s, color=color)
+ return s