colorlog iconcolorlog 1.4

Log formatting with colors!
colorlog is a formatter for use with Python's logging module.

It allows colors to be placed in the format string, which is mostly useful when paired with a StreamHandler that is outputting to a terminal. This is accomplished by added a set of terminal color codes to the record before it is used to format the string.


ColoredFormatter requires at minumum a format string, and takes two options - reset (implictly add a reset code at the end of message strings, defaults to true) and color_levels (a mapping of record level names to color names, defaults to colorlog.DEFAULT_COLOR_LEVELS).

from colorlog import ColoredFormatter

formatstring = "%(bg_level)s%(levelname)-8s%(reset)s %(blue)%(message)s"

levels = {
 'DEBUG': 'cyan',
 'INFO': 'green',
 'WARNING': 'yellow',
 'ERROR': 'red',
 'CRITICAL': 'red',

formatter = ColoredFormatter(formatstring, reset=True, color_levels=levels)

The formatter can then be used in a normal logging setup.


The following values are made availible for use in the format string:

- fg_{colorname}, bg_{colorname}: Foreground and background colors. The colors names are black, red, green, yellow, blue, purple, cyan and white.
- bold: Bold output.
- reset: Clear all formatting (both foreground and background colors).
- fg_level, bg_level: Return the color associated with the records level (from color_levels).

last updated on:
September 8th, 2012, 8:52 GMT
developed by:
Sam Clements
license type:
MIT/X Consortium License 
ROOT \ System \ Logging


In a hurry? Add it to your Download Basket!

user rating



Add your review!