Skip to main content

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+.

Project details


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.2.1.tar.gz (95.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page