Пример #1
0
 def wrapper(*args, **kwargs):
     status_code = 500
     start_time_s = time.time()
     try:
         response = function(*args, **kwargs)
         _, status_code, _ = BaseSerializer.get_full_response(response)
     finally:
         end_time_s = time.time()
         delta_s = end_time_s - start_time_s
         delta_ms = delta_s * 1000
         key = '{status}.{suffix}'.format(status=status_code, suffix=self.key_suffix)
         uwsgi_metrics.timer(self.prefix, key, delta_ms)
     return response
Пример #2
0
 def wrapper(*args, **kwargs):
     status_code = 500
     start_time_s = time.time()
     try:
         response = function(*args, **kwargs)
         _, status_code, _ = BaseSerializer.get_full_response(response)
     finally:
         end_time_s = time.time()
         delta_s = end_time_s - start_time_s
         delta_ms = delta_s * 1000
         key = '{status}.{suffix}'.format(status=status_code, suffix=self.key_suffix)
         uwsgi_metrics.timer(self.prefix, key, delta_ms)
     return response
Пример #3
0
 def wrapper(request):
     status_code = 500
     start_time_s = time.time()
     try:
         response = function(request)
         status_code = response.status_code
     finally:
         end_time_s = time.time()
         delta_s = end_time_s - start_time_s
         delta_ms = delta_s * 1000
         key = '{status}.{suffix}'.format(status=status_code, suffix=self.key_suffix)
         uwsgi_metrics.timer(self.prefix, key, delta_ms)
     return response
Пример #4
0
 def wrapper(request):
     status_code = 500
     start_time_s = time.time()
     try:
         response = function(request)
         status_code = response.status_code
     finally:
         end_time_s = time.time()
         delta_s = end_time_s - start_time_s
         delta_ms = delta_s * 1000
         key = '{status}.{suffix}'.format(status=status_code,
                                          suffix=self.key_suffix)
         uwsgi_metrics.timer(self.prefix, key, delta_ms)
     return response
Пример #5
0
 def wrapper(*args, **kwargs):
     status = 500
     start_time_s = time.time()
     try:
         response = function(*args, **kwargs)
         status = response.status_code
     except HTTPException as http_e:
         status = http_e.code
         raise http_e
     finally:
         end_time_s = time.time()
         delta_s = end_time_s - start_time_s
         delta_ms = delta_s * 1000
         key = '{status}.{suffix}'.format(status=status,
                                          suffix=self.key_suffix)
         uwsgi_metrics.timer(self.prefix, key, delta_ms)
     return response
Пример #6
0
def test_timer(setup):
    with mock.patch('time.time', return_value=42.0):
        uwsgi_metrics.timer(__name__, 'my_timer', 0.0)
        emit(None)

    actual = uwsgi_metrics.view()

    expected = {
        'version': __version__,
        'counters': {},
        'gauges': {},
        'histograms': {},
        'meters': {},
        'timers': {
            'tests.metrics_test.my_timer': {
                'count': 1,
                'max': 0.0,
                'mean': 0.0,
                'min': 0.0,
                'p50': 0.0,
                'p75': 0.0,
                'p95': 0.0,
                'p98': 0.0,
                'p99': 0.0,
                'p999': 0.0,
                'stddev': 0.0,
                'm15_rate': 0.0,
                'm1_rate': 0.0,
                'm5_rate': 0.0,
                'mean_rate': 0.0,
                'duration_units': 'milliseconds',
                'rate_units': 'calls/second',
            }
        }
    }

    assert expected == actual
Пример #7
0
def test_timer(setup):
    with mock.patch('time.time', return_value=42.0):
        uwsgi_metrics.timer(__name__, 'my_timer', 0.0)
        emit(None)

    actual = uwsgi_metrics.view()

    expected = {
        'version': __version__,
        'counters': {},
        'gauges': {},
        'histograms': {},
        'meters': {},
        'timers': {
            'tests.metrics_test.my_timer': {
                'count': 1,
                'max': 0.0,
                'mean': 0.0,
                'min': 0.0,
                'p50': 0.0,
                'p75': 0.0,
                'p95': 0.0,
                'p98': 0.0,
                'p99': 0.0,
                'p999': 0.0,
                'stddev': 0.0,
                'm15_rate': 0.0,
                'm1_rate': 0.0,
                'm5_rate': 0.0,
                'mean_rate': 0.0,
                'duration_units': 'milliseconds',
                'rate_units': 'calls/second',
            }
        }
    }

    assert expected == actual