diff -r 203be9022b46 -r 16dc5dec9c36 pgtoolkit/coloredformatter.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pgtoolkit/coloredformatter.py Fri Sep 09 11:56:37 2011 +0200 @@ -0,0 +1,25 @@ +import logging + +from pgtoolkit import highlight + + +class ColoredFormatter(logging.Formatter): + def __init__(self, fmt, datefmt): + logging.Formatter.__init__(self, fmt, datefmt) + + def format(self, record): + color = () + if record.levelno == 21: + color = (2, None) + if record.levelno == logging.ERROR and not record.exc_info is None: + color = (11, 1) + if color: + origmsg = record.msg + f,b = color + record.msg = highlight(1, f, b) + record.msg + highlight(0) + res = logging.Formatter.format(self, record) + record.msg = origmsg + else: + res = logging.Formatter.format(self, record) + return res +