1.5 KiB
sanelogging
Sane Defaults for Python Logging
The python stdlib logging
module is useful, flexible, and configurable.
However, the maintainers have (quite reasonably) determined that python is
an application runtime and not an application. The default configuration
for the logging
is thus not very useful, and this commonly results in
boilerplate in your own programs.
This is an opinionated module for the 90% case where you just want sane defaults without that boilerplate. (In effect, moving it into PyPI.)
It Also Does Some Other Stuff
-
There are some convenience methods added, such as
panic
anddie
(c.f. golang and perl). -
notice
is aliased toinfo
, for those who forget that python doesn't have a notice level (i.e. me). -
If you set the environment variable
LOG_TO_SYSLOG
to something, it will print out your log messages on paper and mail them to you. -
If stdout is a tty, log messages will be color-coded using the
colorlog
module.
Usage
from sanelogging import log
log.info("starting up!")
log.error("something went wrong.")
log.die("bailing out") # exits
print "no soup for you." # never reached
![example output] (https://raw.githubusercontent.com/sneak/sanelogging/master/example/example.png)
Author
Jeffrey Paul <sneak@sneak.berlin>
5539 AD00 DE4C 42F3 AFE1 1575 0524 43F4 DF2A 55C2
License
This code is released into the public domain.