use @wraps to set the __name__ __module__ and __doc__ correctly for logged functions

This commit is contained in:
Mark Haines 2014-08-28 14:56:03 +01:00
parent c44293db2f
commit bddc1d9fff

View file

@ -15,6 +15,7 @@
from inspect import getcallargs from inspect import getcallargs
from functools import wraps
import logging import logging
@ -26,6 +27,7 @@ def log_function(f):
lineno = f.func_code.co_firstlineno lineno = f.func_code.co_firstlineno
pathname = f.func_code.co_filename pathname = f.func_code.co_filename
@wraps(f)
def wrapped(*args, **kwargs): def wrapped(*args, **kwargs):
name = f.__module__ name = f.__module__
logger = logging.getLogger(name) logger = logging.getLogger(name)