Class: SentrySmartSampler::SampleRatePerErrorRegistry

Inherits:
Object
  • Object
show all
Defined in:
lib/sentry_smart_sampler/sample_rate_per_error_registry.rb

Defined Under Namespace

Classes: Registration

Instance Method Summary collapse

Constructor Details

#initialize(default_sample_rate) ⇒ SampleRatePerErrorRegistry

Returns a new instance of SampleRatePerErrorRegistry.



8
9
10
11
# File 'lib/sentry_smart_sampler/sample_rate_per_error_registry.rb', line 8

def initialize(default_sample_rate)
  @default_sample_rate = default_sample_rate
  @registry = []
end

Instance Method Details

#declare(samplable, sample_rate:) ⇒ Object



13
14
15
# File 'lib/sentry_smart_sampler/sample_rate_per_error_registry.rb', line 13

def declare(samplable, sample_rate:)
  registry << Registration.new(samplable: samplable, sample_rate: sample_rate)
end

#sample_rate_registration_for(error) ⇒ Object



17
18
19
# File 'lib/sentry_smart_sampler/sample_rate_per_error_registry.rb', line 17

def sample_rate_registration_for(error)
  registry.find(-> { default_registration }) { |registration| registration.matches?(error) }
end