module Datadog::Contrib::ActionCable::RootContextEvent::ClassMethods
Class methods for events.
Public Instance Methods
subscription(*args)
click to toggle source
Calls superclass method
# File lib/ddtrace/contrib/action_cable/event.rb, line 46 def subscription(*args) super.tap do |subscription| subscription.before_trace { ensure_clean_context! } end end
Private Instance Methods
ensure_clean_context!()
click to toggle source
Context
objects are thread-bound. If an integration re-uses threads, context from a previous trace could leak into the new trace. This “cleans” current context, preventing such a leak.
# File lib/ddtrace/contrib/action_cable/event.rb, line 58 def ensure_clean_context! return unless configuration[:tracer].call_context.current_span configuration[:tracer].provider.context = Context.new end