Method: Gitlab::Metrics::Samplers::BaseSampler#initialize
- Defined in:
- lib/gitlab/metrics/samplers/base_sampler.rb
#initialize(interval: nil, logger: Logger.new($stdout), warmup: false, **options) ⇒ BaseSampler
interval - The sampling interval in seconds. warmup - When true, takes a single sample eagerly before entering the sampling loop.
This can be useful to ensure that all metrics files exist after `start` returns,
since prometheus-client-mmap creates them lazily upon first access.
15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/gitlab/metrics/samplers/base_sampler.rb', line 15 def initialize(interval: nil, logger: Logger.new($stdout), warmup: false, **) interval ||= ENV[interval_env_key]&.to_i interval ||= self.class::DEFAULT_SAMPLING_INTERVAL_SECONDS interval_half = interval.to_f / 2 @interval = interval @interval_steps = (-interval_half..interval_half).step(0.1).to_a @logger = logger @warmup = warmup super(**) end |