Class: Datadog::Tracing::Component::SamplerDelegatorComponent

Inherits:
Object
  • Object
show all
Defined in:
lib/datadog/tracing/component.rb

Overview

Sampler wrapper component, to allow for hot-swapping the sampler instance used by the tracer. Swapping samplers happens during Dynamic Configuration.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(sampler) ⇒ SamplerDelegatorComponent

Returns a new instance of SamplerDelegatorComponent.



156
157
158
# File 'lib/datadog/tracing/component.rb', line 156

def initialize(sampler)
  @sampler = sampler
end

Instance Attribute Details

#samplerObject

Returns the value of attribute sampler.



154
155
156
# File 'lib/datadog/tracing/component.rb', line 154

def sampler
  @sampler
end

Instance Method Details

#sample!(trace) ⇒ Object



160
161
162
# File 'lib/datadog/tracing/component.rb', line 160

def sample!(trace)
  @sampler.sample!(trace)
end

#update(*args, **kwargs) ⇒ Object



164
165
166
167
168
# File 'lib/datadog/tracing/component.rb', line 164

def update(*args, **kwargs)
  return unless @sampler.respond_to?(:update)

  @sampler.update(*args, **kwargs)
end