Module: Pinot::OpenTelemetry::TraceContextInjector

Defined in:
lib/pinot/open_telemetry.rb

Overview

Prepended into JsonHttpTransport. Injects traceparent/tracestate into request headers when the bridge is enabled and a current span exists.

Instance Method Summary collapse

Instance Method Details

#execute(broker_address, request, extra_request_headers: {}) ⇒ Object



150
151
152
153
154
155
156
157
# File 'lib/pinot/open_telemetry.rb', line 150

def execute(broker_address, request, extra_request_headers: {})
  otel = ::Pinot::OpenTelemetry
  return super unless otel.installed? && otel.enabled?

  carrier = {}
  ::OpenTelemetry.propagation.inject(carrier)
  super(broker_address, request, extra_request_headers: extra_request_headers.merge(carrier))
end