Skip to main content

Lightweight Aspect-oriented Module for Python

Project description

Hooks advice to a function or method.

advise() is a decorator that takes a set of functions or methods and injects the decorated function in their place. There is no concept of before/after callbacks. Instead, the intercepting function is responsible for calling (or not) the intercepted function.

The “classic” logging example:

class A(object):
  def a_function(self):
    print 'a_function()'

@advise(A.a_function)
def logit(on, next, *args, **kwargs):
  logging.debug('%r.%r(%r, %r)', on, next, args, kwargs)
  return next(*args, **kwargs)

See the function documentation for more information.

Project details


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