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
What is the underlying problem you're trying to solve?
OPA currently allows plugging in distributed tracing by providing either a RoundTrip or Handler. This gives the ability to plug in anything that can work with these interfaces.
The downloading of bundles seems however hard-wired to use OpenTelemetry. Especially when embedding OPA as a Go library, older OpenTracing libraries might still be in use or simply other tracing frameworks. At the very least it makes configuring tracing inconsistent.
Describe a "Good Enough" solution
Make the plugin.Manager configurable to use the same tracing customisation available for Rego and Query, i.e. provide a DistributedTracingOpts function that can be passed.
Use the same customization on creating rest clients from the plugin manager that is applied when evaluating policies.
Keep the existing OpenTelemetry configuration.
Alternatively the hard dependency on OpenTelemetry could also be replaced but this might break other users of the go library.
Additional Context
This is only visible if you embed OPA as library and want to see traces not only for outgoing http.send calls but also for downloading discovery / bundles.
The text was updated successfully, but these errors were encountered:
What is the underlying problem you're trying to solve?
OPA currently allows plugging in distributed tracing by providing either a
RoundTrip
orHandler
. This gives the ability to plug in anything that can work with these interfaces.The downloading of bundles seems however hard-wired to use OpenTelemetry. Especially when embedding OPA as a Go library, older OpenTracing libraries might still be in use or simply other tracing frameworks. At the very least it makes configuring tracing inconsistent.
Describe a "Good Enough" solution
plugin.Manager
configurable to use the same tracing customisation available for Rego and Query, i.e. provide aDistributedTracingOpts
function that can be passed.Alternatively the hard dependency on OpenTelemetry could also be replaced but this might break other users of the go library.
Additional Context
This is only visible if you embed OPA as library and want to see traces not only for outgoing
http.send
calls but also for downloading discovery / bundles.The text was updated successfully, but these errors were encountered: