Module: OpenTelemetry::Instrumentation::Rack
- Extended by:
- Rack
- Included in:
- Rack
- Defined in:
- lib/opentelemetry/instrumentation/rack.rb,
lib/opentelemetry/instrumentation/rack/util.rb,
lib/opentelemetry/instrumentation/rack/version.rb,
lib/opentelemetry/instrumentation/rack/instrumentation.rb,
lib/opentelemetry/instrumentation/rack/util/queue_time.rb,
lib/opentelemetry/instrumentation/rack/middlewares/event_handler.rb,
lib/opentelemetry/instrumentation/rack/middlewares/tracer_middleware.rb
Overview
Contains the OpenTelemetry instrumentation for the Rack gem
Defined Under Namespace
Modules: Middlewares, Util Classes: Instrumentation
Constant Summary collapse
- VERSION =
'0.23.4'
Instance Method Summary collapse
-
#context_with_span(span, parent_context: Context.current) ⇒ Object
Returns a context containing the span, derived from the optional parent context, or the current context if one was not provided.
-
#current_span(context = nil) ⇒ Object
Returns the current span from the current or provided context.
-
#with_span(span) {|span, context| ... } ⇒ Object
Activates/deactivates the Span within the current Context, which makes the "current span" available implicitly.
Instance Method Details
#context_with_span(span, parent_context: Context.current) ⇒ Object
Returns a context containing the span, derived from the optional parent context, or the current context if one was not provided.
33 34 35 |
# File 'lib/opentelemetry/instrumentation/rack.rb', line 33 def context_with_span(span, parent_context: Context.current) parent_context.set_value(CURRENT_SPAN_KEY, span) end |
#current_span(context = nil) ⇒ Object
Returns the current span from the current or provided context
23 24 25 26 |
# File 'lib/opentelemetry/instrumentation/rack.rb', line 23 def current_span(context = nil) context ||= Context.current context.value(CURRENT_SPAN_KEY) || OpenTelemetry::Trace::Span::INVALID end |
#with_span(span) {|span, context| ... } ⇒ Object
Activates/deactivates the Span within the current Context, which makes the "current span" available implicitly.
On exit, the Span that was active before calling this method will be reactivated.
44 45 46 |
# File 'lib/opentelemetry/instrumentation/rack.rb', line 44 def with_span(span) Context.with_value(CURRENT_SPAN_KEY, span) { |c, s| yield s, c } end |