import time from openpype.api import Logger log = Logger().get_logger("SyncServer") def time_function(method): """ Decorator to print how much time function took. For debugging. Depends on presence of 'log' object """ def timed(*args, **kw): ts = time.time() result = method(*args, **kw) te = time.time() if 'log_time' in kw: name = kw.get('log_name', method.__name__.upper()) kw['log_time'][name] = int((te - ts) * 1000) else: log.debug('%r %2.2f ms' % (method.__name__, (te - ts) * 1000)) print('%r %2.2f ms' % (method.__name__, (te - ts) * 1000)) return result return timed