-
Notifications
You must be signed in to change notification settings - Fork 766
Open
Labels
Description
Is your feature request related to a problem?
I'm having trouble with a particular use of OTLP export, and it would have been helpful to be able to use gRPC channel interceptors as a debugging tool.
https://grpc-interceptor.readthedocs.io/en/latest/#client-interceptors
However, there is no way to pass down an interceptor into the OTLP gRPC exporter code.
Describe the solution you'd like
A sketch of the logic might be something like:
+ def _default_interceptor(channel):
+ return channel
class OTLPExporterMixin(
...
channel_options=...,
+ channel_interceptor=None):
+ channel_interceptor = channel_interceptor or _default_interceptor
...
+ self._channel = channel_interceptor(self._channel)
self._client = self._stub(self._channel) # type: ignore [reportCallIssue]
...
Along with exposing access to channel_interceptor in the __init__ methods of the consuming classes (e.g. OTLPSpanExporter, OTLPMetricExporter, etc.)
Describe alternatives you've considered
No response
Additional Context
No response
Would you like to implement a fix?
None
Tip
React with π to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it. Learn more here.