def test_grpc_server_handled_latency_seconds_with_normal(
    target_count, grpc_server, grpc_stub
):  # pylint: disable=unused-argument
  for i in range(target_count):
    grpc_stub.SayHello(hello_world_pb2.HelloRequest(name=str(i)))
  target_metric = get_server_metric("grpc_server_handled_latency_seconds")
  assert target_metric.samples == []
def test_grpc_server_handling_seconds_with_stream_unary(
    number_of_names, grpc_server, grpc_stub, stream_request_generator
):  # pylint: disable=unused-argument
  grpc_stub.SayHelloStreamUnary(stream_request_generator(number_of_names))
  target_metric = get_server_metric("grpc_server_handling_seconds")
  assert reduce(
      lambda acc, x: acc if acc > x.value else x.value,
      list(
          filter(
              lambda x: x.name == "grpc_server_handling_seconds_bucket",
              target_metric.samples
          )
      ),
      0
  ) == 1
  assert reduce(
      lambda acc, x: acc if acc > x.value else x.value,
      list(
          filter(
              lambda x: x.name == "grpc_server_handling_seconds_count",
              target_metric.samples
          )
      ),
      0
  ) == 1
  assert reduce(
      lambda acc, x: acc if acc > x.value else x.value,
      list(
          filter(
              lambda x: x.name == "grpc_server_handling_seconds_sum",
              target_metric.samples
          )
      ),
      0
  ) > 0
def test_grpc_server_msg_sent_with_normal(target_count, grpc_server,
                                          grpc_stub):  # pylint: disable=unused-argument
    for i in range(target_count):
        grpc_stub.SayHello(hello_world_pb2.HelloRequest(name=str(i)))
    target_metric = get_server_metric("grpc_server_msg_sent")
    # None streaming request has no this metrics
    assert target_metric.samples == []
def test_grpc_server_handled_latency_seconds_with_stream_unary(
    number_of_names, grpc_server, grpc_stub, stream_request_generator
):  # pylint: disable=unused-argument
  grpc_stub.SayHelloStreamUnary(
      stream_request_generator(number_of_names)
  )
  target_metric = get_server_metric("grpc_server_handled_latency_seconds")
  assert target_metric.samples == []
def test_grpc_server_started_with_bidi_stream(number_of_names, number_of_res,
                                              grpc_server, grpc_stub,
                                              bidi_request_generator):  # pylint: disable=unused-argument
    list(
        grpc_stub.SayHelloBidiStream(
            bidi_request_generator(number_of_names, number_of_res)))
    target_metric = get_server_metric("grpc_server_started")
    assert target_metric.samples == []
def test_grpc_server_msg_sent_with_unary_stream(number_of_res, grpc_server,
                                                grpc_stub):  # pylint: disable=unused-argument
    list(
        grpc_stub.SayHelloUnaryStream(
            hello_world_pb2.MultipleHelloResRequest(name="unary stream",
                                                    res=number_of_res)))
    target_metric = get_server_metric("grpc_server_msg_sent")
    assert target_metric.samples[0].value == number_of_res
Esempio n. 7
0
def test_grpc_server_handled_with_server_error(
    target_count, grpc_server, grpc_stub
):  # pylint: disable=unused-argument
  for _ in range(target_count):
    with pytest.raises(grpc.RpcError):
      grpc_stub.SayHello(hello_world_pb2.HelloRequest(name="unknownError"))

  target_metric = get_server_metric("grpc_server_handled")
  assert target_metric.samples == []
def test_legacy_grpc_server_handled_latency_seconds_with_unary_stream(
    number_of_res, grpc_legacy_server, grpc_stub
):  # pylint: disable=unused-argument
  list(
      grpc_stub.SayHelloUnaryStream(
          hello_world_pb2.MultipleHelloResRequest(
              name="unary stream", res=number_of_res
          )
      )
  )
  target_metric = get_server_metric("grpc_server_handled_latency_seconds")
  # No grpc_server_handled_latency_seconds for streaming response
  assert target_metric.samples == []
def test_grpc_server_handling_seconds_with_unary_stream(
    number_of_res, grpc_server, grpc_stub
):  # pylint: disable=unused-argument
  list(
      grpc_stub.SayHelloUnaryStream(
          hello_world_pb2.MultipleHelloResRequest(
              name="unary stream", res=number_of_res
          )
      )
  )
  target_metric = get_server_metric("grpc_server_handling_seconds")
  # Only one request sent
  assert target_metric.samples == []
Esempio n. 10
0
def test_grpc_server_handled_with_interceptor_error_and_skip_exceptions(
    target_count, grpc_server_with_exception_handling, grpc_stub
):  # pylint: disable=unused-argument
  for _ in range(target_count):
    with patch(
        'py_grpc_prometheus.prometheus_server_interceptor.'\
        'PromServerInterceptor._compute_status_code',
        side_effect=Exception('mocked error')
    ):
      assert grpc_stub.SayHello(
          hello_world_pb2.HelloRequest(name="unary")
      ).message == "Hello, unary!"

  target_metric = get_server_metric("grpc_server_handled")
  assert target_metric.samples == []
def test_legacy_grpc_server_handled_latency_seconds_with_normal(
    target_count, grpc_legacy_server, grpc_stub
):  # pylint: disable=unused-argument
  for i in range(target_count):
    grpc_stub.SayHello(hello_world_pb2.HelloRequest(name=str(i)))
  target_metric = get_server_metric("grpc_server_handled_latency_seconds")
  assert reduce(
      lambda acc, x: acc if acc > x.value else x.value,
      list(
          filter(
              lambda x: x.name == "grpc_server_handled_latency_seconds_bucket",
              target_metric.samples
          )
      ),
      0
  ) == target_count
  assert reduce(
      lambda acc, x: acc if acc > x.value else x.value,
      list(
          filter(
              lambda x: x.name == "grpc_server_handled_latency_seconds_count",
              target_metric.samples
          )
      ),
      0
  ) == target_count
  assert reduce(
      lambda acc, x: acc if acc > x.value else x.value,
      list(
          filter(
              lambda x: x.name == "grpc_server_handled_latency_seconds_sum",
              target_metric.samples
          )
      ),
      0
  ) > 0
Esempio n. 12
0
def test_grpc_server_msg_received_with_stream_unary(
    number_of_names, grpc_server, grpc_stub, stream_request_generator
):  # pylint: disable=unused-argument
  grpc_stub.SayHelloStreamUnary(stream_request_generator(number_of_names))
  target_metric = get_server_metric("grpc_server_msg_received")
  assert target_metric.samples[0].value == number_of_names
def test_grpc_server_started_with_normal(target_count, grpc_server, grpc_stub):  # pylint: disable=unused-argument
    for i in range(target_count):
        grpc_stub.SayHello(hello_world_pb2.HelloRequest(name=str(i)))
    target_metric = get_server_metric("grpc_server_started")
    assert target_metric.samples[0].value == target_count