module OpenTelemetry::Instrumentation::ConcurrentRuby::Patches::Future

Concurrent::Future patch for instrumentation

Public Class Methods

included(base) click to toggle source
# File lib/opentelemetry/instrumentation/concurrent_ruby/patches/future.rb, line 15
def self.included(base)
  base.class_eval do
    alias_method :ns_initialize_without_otel, :ns_initialize
    remove_method(:ns_initialize)

    def ns_initialize(value, opts)
      ns_initialize_without_otel(value, opts)

      @executor = ContextCompositeExecutorService.new(@executor)
    end
  end
end

Public Instance Methods

ns_initialize(value, opts) click to toggle source
# File lib/opentelemetry/instrumentation/concurrent_ruby/patches/future.rb, line 20
def ns_initialize(value, opts)
  ns_initialize_without_otel(value, opts)

  @executor = ContextCompositeExecutorService.new(@executor)
end