def _try_on_message(self, *args): try: SERVER_FREE_WORKERS.labels(servicer.name(), 'rabbitmq').dec() SERVER_IN_PROGRESS.labels(servicer.name(), 'rabbitmq').inc() self._in_progress += 1 self._on_message(*args) except: logging.exception( "Unrecoverable exception while handling message") finally: SERVER_FREE_WORKERS.labels(servicer.name(), 'rabbitmq').inc() SERVER_IN_PROGRESS.labels(servicer.name(), 'rabbitmq').dec() self._in_progress -= 1
def setup_context(request, context): task_context = GrpcTaskContext(context) servicer.set_current_context(task_context) start_time = time.time() SERVER_FREE_WORKERS.labels(servicer.name(), 'grpc').dec() SERVER_IN_PROGRESS.labels(servicer.name(), 'grpc').inc() try: response = handler.unary_unary(request, context) response_metadata = task_context.response_metadata() if response_metadata: context.set_trailing_metadata(response_metadata) finally: servicer.set_current_context(None) SERVER_FREE_WORKERS.labels(servicer.name(), 'grpc').inc() SERVER_IN_PROGRESS.labels(servicer.name(), 'grpc').dec() elapsed = time.time() - start_time SERVER_LATENCY.labels(servicer.name(), handler_call_details.method, 'grpc').observe(elapsed) return response
def _before_request(request): state = headers.get_state(request.headers) trace_info = headers.get_trace_info(request.headers) servicer.set_current_context(SanicTaskContext(state, trace_info)) SERVER_FREE_WORKERS.labels(servicer.name(), 'sanic').dec() SERVER_IN_PROGRESS.labels(servicer.name(), 'sanic').inc()
def _after_request(request, response): SERVER_FREE_WORKERS.labels(servicer.name(), 'sanic').inc() SERVER_IN_PROGRESS.labels(servicer.name(), 'sanic').dec()
def _after_exception(sender, exception, **extra): SERVER_FREE_WORKERS.labels(servicer.name(), 'flask').inc() SERVER_IN_PROGRESS.labels(servicer.name(), 'flask').dec()
def _after_request(sender, response, **extra): SERVER_FREE_WORKERS.labels(servicer.name(), 'flask').inc() SERVER_IN_PROGRESS.labels(servicer.name(), 'flask').dec()
def process_exception(self, request, exception): if getattr(request, 'counted_request', False): SERVER_FREE_WORKERS.labels(servicer.name(), 'django').inc() SERVER_IN_PROGRESS.labels(servicer.name(), 'django').dec() request.counted_request = False
def process_request(self, request): SERVER_FREE_WORKERS.labels(servicer.name(), 'django').dec() SERVER_IN_PROGRESS.labels(servicer.name(), 'django').inc() request.counted_request = True servicer.set_current_context(DjangoTaskContext())