util.profiler: simplify

follow-up 6192bfce46
closes #4904
This commit is contained in:
SomberNight 2018-12-20 17:09:58 +01:00
parent 7773443c17
commit 744bfc1eeb
No known key found for this signature in database
GPG key ID: B33B5F232C6271E9

View file

@ -32,7 +32,6 @@ import urllib
import threading import threading
import hmac import hmac
import stat import stat
import inspect
from locale import localeconv from locale import localeconv
import asyncio import asyncio
import urllib.request, urllib.parse, urllib.error import urllib.request, urllib.parse, urllib.error
@ -358,18 +357,8 @@ def constant_time_compare(val1, val2):
# decorator that prints execution time # decorator that prints execution time
def profiler(func): def profiler(func):
def get_func_name(args):
arg_names_from_sig = inspect.getfullargspec(func).args
# prepend class name if there is one (and if we can find it)
if len(arg_names_from_sig) > 0 and len(args) > 0 \
and arg_names_from_sig[0] in ('self', 'cls', 'klass'):
classname = args[0].__class__.__name__
else:
classname = ''
name = '{}.{}'.format(classname, func.__name__) if classname else func.__name__
return name
def do_profile(args, kw_args): def do_profile(args, kw_args):
name = get_func_name(args) name = func.__qualname__
t0 = time.time() t0 = time.time()
o = func(*args, **kw_args) o = func(*args, **kw_args)
t = time.time() - t0 t = time.time() - t0