def _record_meta_profiling(self): if SilkyConfig().SILKY_META: num_queries = len(self.silk_queries) query_time = sum(_time_taken(x['start_time'], x['end_time']) for _, x in self.silk_queries.items()) self.request.meta_num_queries = num_queries self.request.meta_time_spent_queries = query_time self.request.save()
def wrapped_target(*args, **kwargs): request = DataCollector().request if request: start_time = timezone.now() result = target(*args, **kwargs) end_time = timezone.now() curr = request.meta_time or 0 request.meta_time = curr + _time_taken(start_time, end_time) else: result = target(*args, **kwargs) return result
def __exit__(self, exc_type, exc_val, exc_tb): if self._should_meta_profile: end_time = timezone.now() exception_raised = exc_type is not None if exception_raised: Logger.error('Exception when performing meta profiling, dumping trace below') traceback.print_exception(exc_type, exc_val, exc_tb) request = getattr(DataCollector().local, 'request', None) if request: curr = request.meta_time or 0 request.meta_time = curr + _time_taken(self.start_time, end_time)
def wrapped_target(*args, **kwargs): request = DataCollector().request if request: start_time = timezone.now() result = target(*args, **kwargs) end_time = timezone.now() curr = request.meta_time or 0 request.meta_time = curr + _time_taken(start_time, end_time) else: # Logger.error('Cant perform meta profile due to no request model in DataCollector. ' # 'Has Silk middleware been installed properly?') result = target(*args, **kwargs) return result
def wrapped_target(*args, **kwargs): request = DataCollector().request if request: start_time = timezone.now() result = target(*args, **kwargs) end_time = timezone.now() curr = request.meta_time or 0 request.meta_time = curr + _time_taken(start_time, end_time) else: Logger.error('Cant perform meta profile due to no request model in DataCollector. ' 'Has Silk middleware been installed properly?') result = target(*args, **kwargs) return result
def __exit__(self, exc_type, exc_val, exc_tb): if self._should_meta_profile: end_time = datetime.datetime.now() exception_raised = exc_type is not None if exception_raised: Logger.error('Exception when performing meta profiling, dumping trace below') traceback.print_exception(exc_type, exc_val, exc_tb) request = DataCollector().request if request: curr = request.meta_time or 0 request.meta_time = curr + _time_taken(self.start_time, end_time) else: Logger.error('Cant perform meta profile due to no request model in DataCollector. ' 'Has Silk middleware been installed properly?')
def __exit__(self, exc_type, exc_val, exc_tb): if self._should_meta_profile: end_time = timezone.now() exception_raised = exc_type is not None if exception_raised: Logger.error('Exception when performing meta profiling, dumping trace below') traceback.print_exception(exc_type, exc_val, exc_tb) request = DataCollector().request if request: curr = request.meta_time or 0 request.meta_time = curr + _time_taken(self.start_time, end_time) else: Logger.error('Cant perform meta profile due to no request model in DataCollector. ' 'Has Silk middleware been installed properly?') DataCollector().end_meta_block()
def test_time_taken(self): profile = list(DataCollector().profiles.values())[0] time_taken = _time_taken(start_time=profile['start_time'], end_time=profile['end_time']) self.assertGreaterEqual(time_taken, 100) self.assertLess(time_taken, 110)
def test_time_taken(self): profile = list(DataCollector().profiles)[0] time_taken = _time_taken(start_time=profile["start_time"], end_time=profile["end_time"]) self.assertGreaterEqual(time_taken, 100) self.assertLess(time_taken, 110)