Quantcast
Channel: Recent Gists from brainsik
Viewing all articles
Browse latest Browse all 30

ANSI colored Python logging

$
0
0
color_log.py
importlogging
fromtermcolorimportcolored
classColorLog(object):
colormap=dict(
debug=dict(color='grey', attrs=['bold']),
info=dict(color='white'),
warn=dict(color='yellow', attrs=['bold']),
warning=dict(color='yellow', attrs=['bold']),
error=dict(color='red'),
critical=dict(color='red', attrs=['bold']),
)
def__init__(self, logger):
self._log=logger
def__getattr__(self, name):
ifnamein ['debug', 'info', 'warn', 'warning', 'error', 'critical']:
returnlambdas, *args: getattr(self._log, name)(
colored(s, **self.colormap[name]), *args)
returngetattr(self._log, name)
log=ColorLog(logging.getLogger(__name__))
if__name__=='__main__':
log.setLevel(logging.DEBUG)
stdout=logging.StreamHandler()
stdout.setLevel(logging.DEBUG)
log.addHandler(stdout)
log.debug("booooring . . .")
log.info("pleasing anecdote")
log.warn("awkward utterance")
log.error("drunken rudeness")

Viewing all articles
Browse latest Browse all 30

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>