Skip to content

Commit 618748d

Browse files
committed
add trailing_metadata to _OpenTelemetryServicerContext
The trailing_metadata method was added to grpc._server.ServicerContext in gRPC v1.38.0, and we would like to use it with OpenTelemetry in our custom interceptors. Doing a hasattr check to maintain support for earlier versions of gRPC.
1 parent dd72d94 commit 618748d

File tree

1 file changed

+7
-0
lines changed
  • instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc

1 file changed

+7
-0
lines changed

instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/_server.py

+7
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,13 @@ def send_initial_metadata(self, *args, **kwargs):
114114
def set_trailing_metadata(self, *args, **kwargs):
115115
return self._servicer_context.set_trailing_metadata(*args, **kwargs)
116116

117+
def trailing_metadata(self):
118+
# This method was added to grpc.ServicerContext in gRPC v1.38.0. We do
119+
# this hasattr check to maintain support for earlier gRPC versions.
120+
if hasattr(self._servicer_context, "trailing_metadata"):
121+
return self._servicer_context.trailing_metadata()
122+
raise NotImplementedError()
123+
117124
def abort(self, code, details):
118125
self.code = code
119126
self.details = details

0 commit comments

Comments
 (0)