Documentation ¶
Overview ¶
Package tracing enables dependency-injection at runtime. When used together with an underscore-import of `github.com/open-policy-agent/opa/features/tracing`, the server and its runtime will emit OpenTelemetry spans to the configured sink.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewHandler ¶
NewHandler returns another http.Handler, instrumented to emit tracing spans according to Options. Provided by the HTTPTracingService registered with this package via RegisterHTTPTracing.
func NewTransport ¶
func NewTransport(tr http.RoundTripper, opts Options) http.RoundTripper
NewTransport returns another http.RoundTripper, instrumented to emit tracing spans according to Options. Provided by the HTTPTracingService registered with this package via RegisterHTTPTracing.
func RegisterHTTPTracing ¶
func RegisterHTTPTracing(ht HTTPTracingService)
RegisterHTTPTracing enables a HTTPTracingService for further use.
Types ¶
type HTTPTracingService ¶
type HTTPTracingService interface { // NewTransport is used when setting up an HTTP client NewTransport(http.RoundTripper, Options) http.RoundTripper // NewHandler is used to wrap an http.Handler in the server NewHandler(http.Handler, string, Options) http.Handler }
HTTPTracingService defines how distributed tracing comes in, server- and client-side
type Options ¶
type Options []interface{}
Options are options for the HTTPTracingService, passed along as-is.
func NewOptions ¶
func NewOptions(opts ...interface{}) Options
NewOptions is a helper method for constructing `tracing.Options`