Class: Test::Propagation::RackCodec

Inherits:
Object
  • Object
show all
Defined in:
lib/test/propagation/rack_codec.rb

Defined Under Namespace

Modules: Headers

Instance Method Summary collapse

Instance Method Details

#extract(carrier) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
# File 'lib/test/propagation/rack_codec.rb', line 22

def extract(carrier)
  trace_id = carrier[Headers::Rack::TRACE_ID]
  span_id = carrier[Headers::Rack::SPAN_ID]
  parent_span_id = carrier[Headers::Rack::PARENT_SPAN_ID]

  if trace_id && span_id
    SpanContext.new(trace_id: trace_id,
                    span_id: span_id,
                    parent_span_id: parent_span_id)
  end
end

#inject(span_context, carrier) ⇒ Object



16
17
18
19
20
# File 'lib/test/propagation/rack_codec.rb', line 16

def inject(span_context, carrier)
  carrier[Headers::TRACE_ID] = span_context.trace_id
  carrier[Headers::SPAN_ID] = span_context.span_id
  carrier[Headers::PARENT_SPAN_ID] = span_context.parent_span_id
end