Class: OpenTelemetry::Context::Propagation::RackEnvGetter

Inherits:
Object
  • Object
show all
Defined in:
lib/opentelemetry/context/propagation/rack_env_getter.rb

Overview

The RackEnvGetter class provides a common methods for reading keys from a rack environment. It abstracts away the rack-normalization process so that keys can be looked up without having to transform them first. With this class you can get traceparent instead of HTTP_TRACEPARENT

Instance Method Summary collapse

Instance Method Details

#get(carrier, key) ⇒ Object

Converts key into a rack-normalized key and reads it from the carrier. Useful for extract operations.



21
22
23
# File 'lib/opentelemetry/context/propagation/rack_env_getter.rb', line 21

def get(carrier, key)
  carrier[to_rack_key(key)] || carrier[key]
end

#keys(carrier) ⇒ Object

Reads all keys from a carrier and converts them from the rack-normalized form to the original. The resulting keys will be lowercase and underscores will be replaced with dashes.



28
29
30
# File 'lib/opentelemetry/context/propagation/rack_env_getter.rb', line 28

def keys(carrier)
  carrier.keys.map(&method(:from_rack_key))
end