sanelogging/README.md

62 lines
1.5 KiB
Markdown

# 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` and `die` (c.f.
golang and perl).
* `notice` is aliased to `info`, 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
```python
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>
https://sneak.berlin
[@sneakdotberlin](https://twitter.com/sneakdotberlin)
`5539 AD00 DE4C 42F3 AFE1 1575 0524 43F4 DF2A 55C2`
License
=======
This code is released into the public domain.