Dashboard / dashboard_utils /time_tracker.py
SaulLu's picture
add time tracker
80b93ff
raw
history blame
730 Bytes
from time import time
from functools import wraps
def simple_time_tracker(log_fun):
def _simple_time_tracker(fn):
@wraps(fn)
def wrapped_fn(*args, **kwargs):
start_time = time()
try:
result = fn(*args, **kwargs)
finally:
elapsed_time = time() - start_time
# log the result
log_fun({
'function_name': fn.__name__,
'total_time': elapsed_time,
})
return result
return wrapped_fn
return _simple_time_tracker
def _log(message):
print('[SimpleTimeTracker] {function_name} {total_time:.3f}'.format(**message))