Skip to content

Commit 451ade7

Browse files
committed
fix(grpc): Return propagate proper metadata object instead of list in client interceptor
Fixes #2509
1 parent a0c836b commit 451ade7

File tree

1 file changed

+3
-13
lines changed

1 file changed

+3
-13
lines changed

sentry_sdk/integrations/grpc/aio/client.py

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
ClientCallDetails,
77
UnaryUnaryCall,
88
UnaryStreamCall,
9+
Metadata,
910
)
1011
from google.protobuf.message import Message
1112

@@ -20,20 +21,9 @@ class ClientInterceptor:
2021
def _update_client_call_details_metadata_from_scope(
2122
client_call_details: ClientCallDetails,
2223
) -> ClientCallDetails:
23-
metadata = (
24-
list(client_call_details.metadata) if client_call_details.metadata else []
25-
)
24+
client_call_details.metadata = client_call_details.metadata or Metadata()
2625
for key, value in Scope.get_current_scope().iter_trace_propagation_headers():
27-
metadata.append((key, value))
28-
29-
client_call_details = ClientCallDetails(
30-
method=client_call_details.method,
31-
timeout=client_call_details.timeout,
32-
metadata=metadata,
33-
credentials=client_call_details.credentials,
34-
wait_for_ready=client_call_details.wait_for_ready,
35-
)
36-
26+
client_call_details.metadata.add(key, value)
3727
return client_call_details
3828

3929

0 commit comments

Comments
 (0)