You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
TLDR: We are using grpc interceptors to inject auth token and user agent metadata per request. When client is using ddtrace library its passing along metadata as list instead of grpc.aio.Metadata object which was causing sdk to choke.
This ticket was meant to be a follow-up for the initial fix we put in for this to make our interceptor more defensive in how it handled inbound client_request_metadata.
Longer term I would like to take the following actions:
I would like to revisit why we are even using client interceptors to inject this metadata into requests in the first place. We are the ones initiating requests with GRPC so we have the opportunity to inject all the metadata we need to make request upfront as we build the request object. We already are injecting cache-name dynamically on request metadata this way from with in our SDK data client here for example using this utility method. We could just make this bit more flexible to set all metadata upfront and thus eliminate the need for us to even have yet another interceptor in the mix on request lifecycle. I think by doing all in side our clients as we build up requests will be easier to debug and maintain.
Work with Datadog longer term and try and patch their interceptor to play better with others and follow proper typing in gRPC python library.
The text was updated successfully, but these errors were encountered:
See the following PR for more context.
#148
TLDR: We are using grpc interceptors to inject auth token and user agent metadata per request. When client is using
ddtrace
library its passing along metadata aslist
instead ofgrpc.aio.Metadata
object which was causing sdk to choke.This ticket was meant to be a follow-up for the initial fix we put in for this to make our interceptor more defensive in how it handled inbound client_request_metadata.
Longer term I would like to take the following actions:
The text was updated successfully, but these errors were encountered: