Autologging is a module containing decorators and a metaclass used to make logging classes easier.
Project description
Autologging provides two decorators and a metaclass factory:
@logged
- creates a class-level '__logger' member
- the logger is automatically named to match the dotted-name of the class
@traced
- decorates a module-level function to provide call/return tracing
- log record attributes (pathname, filename, lineno, module, funcName)
are correctly preserved (i.e. they refer to the original function, NOT
the proxy function returned by the decorator)
TracedMethods
- creates a metaclass that adds automatic tracing to specified class
methods (just like @traced does for module-level functions)
- log record attributes (pathname, filename, lineno, module, funcName)
are correctly preserved (i.e. they refer to the original class method,
NOT the proxy method installed by the metaclass)
Additionally, the autologging module defines and registers a custom
log level named "TRACE" (level 1) so that tracing messages can be
toggled on/off independently of DEBUG-level logging.
Autologging runs on Python 2.7 and 3.2+.
@logged
- creates a class-level '__logger' member
- the logger is automatically named to match the dotted-name of the class
@traced
- decorates a module-level function to provide call/return tracing
- log record attributes (pathname, filename, lineno, module, funcName)
are correctly preserved (i.e. they refer to the original function, NOT
the proxy function returned by the decorator)
TracedMethods
- creates a metaclass that adds automatic tracing to specified class
methods (just like @traced does for module-level functions)
- log record attributes (pathname, filename, lineno, module, funcName)
are correctly preserved (i.e. they refer to the original class method,
NOT the proxy method installed by the metaclass)
Additionally, the autologging module defines and registers a custom
log level named "TRACE" (level 1) so that tracing messages can be
toggled on/off independently of DEBUG-level logging.
Autologging runs on Python 2.7 and 3.2+.
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
Autologging-0.1.tar.gz
(84.2 kB
view hashes)