Module: OpenTelemetry::Common::HTTP::ClientContext
- Extended by:
- ClientContext
- Included in:
- ClientContext
- Defined in:
- lib/opentelemetry/common/http/client_context.rb
Overview
ClientContext contains common helpers for context propagation
Instance Method Summary collapse
-
#attributes(context = nil) ⇒ Object
Returns the attributes hash representing the HTTP client context found in the optional context or the current context if none is provided.
-
#context_with_attributes(attributes_hash, parent_context: Context.current) ⇒ Object
Returns a context containing the merged attributes hash, derived from the optional parent context, or the current context if one was not provided.
-
#with_attributes(attributes_hash) {|Hash, Context| ... } ⇒ Object
Activates/deactivates the merged attributes hash within the current Context, which makes the “current attributes hash” available implicitly.
Instance Method Details
#attributes(context = nil) ⇒ Object
Returns the attributes hash representing the HTTP client context found in the optional context or the current context if none is provided.
23 24 25 26 |
# File 'lib/opentelemetry/common/http/client_context.rb', line 23 def attributes(context = nil) context ||= Context.current context.value(CURRENT_ATTRIBUTES_HASH) || {} end |
#context_with_attributes(attributes_hash, parent_context: Context.current) ⇒ Object
Returns a context containing the merged attributes hash, derived from the optional parent context, or the current context if one was not provided.
33 34 35 36 |
# File 'lib/opentelemetry/common/http/client_context.rb', line 33 def context_with_attributes(attributes_hash, parent_context: Context.current) attributes_hash = attributes(parent_context).merge(attributes_hash) parent_context.set_value(CURRENT_ATTRIBUTES_HASH, attributes_hash) end |
#with_attributes(attributes_hash) {|Hash, Context| ... } ⇒ Object
Activates/deactivates the merged attributes hash within the current Context, which makes the “current attributes hash” available implicitly.
On exit, the attributes hash that was active before calling this method will be reactivated.
47 48 49 50 |
# File 'lib/opentelemetry/common/http/client_context.rb', line 47 def with_attributes(attributes_hash) attributes_hash = attributes.merge(attributes_hash) Context.with_value(CURRENT_ATTRIBUTES_HASH, attributes_hash) { |c, h| yield h, c } end |