Rich Traceback Logger
Project description
Informative Traceback Logging for Python
Informative stack traces showing method parameters. Simple standalone logger with console syslog support.
Usage:
If you’re already using the logging module, import rich_traceback.enable in your module. Then logger.exception() will report nicely formatted exceptions.
import rich_traceback.enable
Otherwise, create a new logger using the RichTracebackFormatter class, or see rich_traceback.log as an example:
(save as test.py)
from rich_traceback.formatter import RichTracebackFormatter import logging logger = logging.getLogger('root') console_log = logging.StreamHandler() console_log.setFormatter(RichTracebackFormatter()) logger.addHandler(console_log) def foo(x=3): if 1.0/x: foo(x-1) try: foo() except: logger.exception("error running foo") print "compare with standard Python traceback" foo() # for standard traceback
$ python test.py ERROR root test.<module>:15 error running foo <type 'exceptions.ZeroDivisionError'>: ZeroDivisionError('float division by zero',) ([5] frames following) [4] test.py, foo(x=0) at line 9: if 1.0/x: [3] test.py, foo(x=1) at line 10: foo(x-1) [2] test.py, foo(x=2) at line 10: foo(x-1) [1] test.py, foo(x=3) at line 10: foo(x-1) [0] test.py, <module>() at line 13: foo() compare with standard Python traceback Traceback (most recent call last): File "test.py", line 18, in <module> foo() File "test.py", line 10, in foo foo(x-1) File "test.py", line 10, in foo foo(x-1) File "test.py", line 10, in foo foo(x-1) File "test.py", line 9, in foo if 1.0/x: ZeroDivisionError: float division by zero
For a global exception trap, see enable.py
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
rich-traceback-1.0.2.tar.gz
(8.6 kB
view hashes)
Built Distribution
Close
Hashes for rich_traceback-1.0.2-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a570b90e274f992877c10789852f97b7dfb6499a77140f331f0baa3e519d6b21 |
|
MD5 | 4d06542233621fcf2ec0583d398ef12f |
|
BLAKE2b-256 | a8de894c68e949ca116cc42d3af29ec8c58a065d01b62eea9e117db71118cff1 |