Skip to content

Commit 8cbc6b6

Browse files
fix: suppress deprecation warning in Rdkafka Instrumentation (#884)
* fix: suppress deprecation warning in Rdkafka Instrumentation * memoize getter * Use constant * rubocop fix --------- Co-authored-by: Ariel Valentin <[email protected]>
1 parent 6fb6eb3 commit 8cbc6b6

File tree

1 file changed

+9
-2
lines changed
  • instrumentation/rdkafka/lib/opentelemetry/instrumentation/rdkafka/patches

1 file changed

+9
-2
lines changed

instrumentation/rdkafka/lib/opentelemetry/instrumentation/rdkafka/patches/consumer.rb

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,13 @@ module Rdkafka
1010
module Patches
1111
# The Consumer module contains the instrumentation patch for the Consumer class
1212
module Consumer
13+
GETTER = if Gem::Version.new(::Rdkafka::VERSION) >= Gem::Version.new('0.13.0')
14+
Context::Propagation.text_map_getter
15+
else
16+
OpenTelemetry::Common::Propagation.symbol_key_getter
17+
end
18+
private_constant :GETTER
19+
1320
def each
1421
super do |message|
1522
attributes = {
@@ -23,7 +30,7 @@ def each
2330
message_key = extract_message_key(message.key)
2431
attributes['messaging.kafka.message_key'] = message_key if message_key
2532

26-
parent_context = OpenTelemetry.propagation.extract(message.headers, getter: OpenTelemetry::Common::Propagation.symbol_key_getter)
33+
parent_context = OpenTelemetry.propagation.extract(message.headers, getter: GETTER)
2734
span_context = OpenTelemetry::Trace.current_span(parent_context).context
2835
links = [OpenTelemetry::Trace::Link.new(span_context)] if span_context.valid?
2936

@@ -47,7 +54,7 @@ def each_batch(max_items: 100, bytes_threshold: Float::INFINITY, timeout_ms: 250
4754
}
4855

4956
links = messages.map do |message|
50-
trace_context = OpenTelemetry.propagation.extract(message.headers, getter: OpenTelemetry::Common::Propagation.symbol_key_getter)
57+
trace_context = OpenTelemetry.propagation.extract(message.headers, getter: GETTER)
5158
span_context = OpenTelemetry::Trace.current_span(trace_context).context
5259
OpenTelemetry::Trace::Link.new(span_context) if span_context.valid?
5360
end

0 commit comments

Comments
 (0)