Method: Datadog::Tracing::Sampling::RateSampler#initialize

Defined in:
lib/datadog/tracing/sampling/rate_sampler.rb

#initialize(sample_rate = 1.0, decision: nil) ⇒ RateSampler

Initialize a Datadog::Tracing::Sampling::RateSampler. This sampler keeps a random subset of the traces. Its main purpose is to reduce the instrumentation footprint.

Parameters:

  • sample_rate (Numeric) (defaults to: 1.0)

    the sample rate between 0.0 and 1.0, inclusive. 0.0 means that no trace will be sampled; 1.0 means that all traces will be sampled.



20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/datadog/tracing/sampling/rate_sampler.rb', line 20

def initialize(sample_rate = 1.0, decision: nil)
  super()

  unless sample_rate >= 0.0 && sample_rate <= 1.0
    Datadog.logger.warn('sample rate is not between 0 and 1, falling back to 1')
    sample_rate = 1.0
  end

  self.sample_rate = sample_rate

  @decision = decision
end