mirror of
https://github.com/open-telemetry/opentelemetry-python-contrib.git
synced 2025-07-31 14:11:50 +08:00
Change status codes from grpc status codes, remove setting status in instrumentations except on ERROR (#1282)
This commit is contained in:
@ -26,7 +26,7 @@ import grpc
|
||||
|
||||
from opentelemetry import metrics, propagators, trace
|
||||
from opentelemetry.sdk.metrics.export.controller import PushController
|
||||
from opentelemetry.trace.status import Status, StatusCanonicalCode
|
||||
from opentelemetry.trace.status import Status, StatusCode
|
||||
|
||||
from . import grpcext
|
||||
from ._utilities import RpcInfo, TimedMetricRecorder
|
||||
@ -169,9 +169,9 @@ class OpenTelemetryClientInterceptor(
|
||||
|
||||
try:
|
||||
result = invoker(request, metadata)
|
||||
except grpc.RpcError as exc:
|
||||
except grpc.RpcError:
|
||||
guarded_span.generated_span.set_status(
|
||||
Status(StatusCanonicalCode(exc.code().value[0]))
|
||||
Status(StatusCode.ERROR)
|
||||
)
|
||||
raise
|
||||
|
||||
@ -224,10 +224,8 @@ class OpenTelemetryClientInterceptor(
|
||||
response.ByteSize(), client_info.full_method
|
||||
)
|
||||
yield response
|
||||
except grpc.RpcError as exc:
|
||||
span.set_status(
|
||||
Status(StatusCanonicalCode(exc.code().value[0]))
|
||||
)
|
||||
except grpc.RpcError:
|
||||
span.set_status(Status(StatusCode.ERROR))
|
||||
raise
|
||||
|
||||
def intercept_stream(
|
||||
@ -264,9 +262,9 @@ class OpenTelemetryClientInterceptor(
|
||||
|
||||
try:
|
||||
result = invoker(request_or_iterator, metadata)
|
||||
except grpc.RpcError as exc:
|
||||
except grpc.RpcError:
|
||||
guarded_span.generated_span.set_status(
|
||||
Status(StatusCanonicalCode(exc.code().value[0]))
|
||||
Status(StatusCode.ERROR)
|
||||
)
|
||||
raise
|
||||
|
||||
|
@ -220,9 +220,8 @@ class TestClientProto(TestBase):
|
||||
spans = self.memory_exporter.get_finished_spans()
|
||||
self.assertEqual(len(spans), 1)
|
||||
span = spans[0]
|
||||
self.assertEqual(
|
||||
span.status.canonical_code.value,
|
||||
grpc.StatusCode.INVALID_ARGUMENT.value[0],
|
||||
self.assertIs(
|
||||
span.status.status_code, trace.status.StatusCode.ERROR,
|
||||
)
|
||||
|
||||
def test_error_stream_unary(self):
|
||||
@ -233,9 +232,8 @@ class TestClientProto(TestBase):
|
||||
spans = self.memory_exporter.get_finished_spans()
|
||||
self.assertEqual(len(spans), 1)
|
||||
span = spans[0]
|
||||
self.assertEqual(
|
||||
span.status.canonical_code.value,
|
||||
grpc.StatusCode.INVALID_ARGUMENT.value[0],
|
||||
self.assertIs(
|
||||
span.status.status_code, trace.status.StatusCode.ERROR,
|
||||
)
|
||||
|
||||
def test_error_unary_stream(self):
|
||||
@ -247,9 +245,8 @@ class TestClientProto(TestBase):
|
||||
spans = self.memory_exporter.get_finished_spans()
|
||||
self.assertEqual(len(spans), 1)
|
||||
span = spans[0]
|
||||
self.assertEqual(
|
||||
span.status.canonical_code.value,
|
||||
grpc.StatusCode.INVALID_ARGUMENT.value[0],
|
||||
self.assertIs(
|
||||
span.status.status_code, trace.status.StatusCode.ERROR,
|
||||
)
|
||||
|
||||
def test_error_stream_stream(self):
|
||||
@ -263,9 +260,8 @@ class TestClientProto(TestBase):
|
||||
spans = self.memory_exporter.get_finished_spans()
|
||||
self.assertEqual(len(spans), 1)
|
||||
span = spans[0]
|
||||
self.assertEqual(
|
||||
span.status.canonical_code.value,
|
||||
grpc.StatusCode.INVALID_ARGUMENT.value[0],
|
||||
self.assertIs(
|
||||
span.status.status_code, trace.status.StatusCode.ERROR,
|
||||
)
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user