class ScoutApm::Instruments::PercentileSampler
Public Class Methods
Source
# File lib/scout_apm/instruments/percentile_sampler.rb, line 21 def initialize(context) @context = context end
Public Instance Methods
Source
# File lib/scout_apm/instruments/percentile_sampler.rb, line 25 def histograms @context.request_histograms_by_time end
Source
# File lib/scout_apm/instruments/percentile_sampler.rb, line 33 def human_name 'Percentiles' end
Source
# File lib/scout_apm/instruments/percentile_sampler.rb, line 29 def logger @context.logger end
Source
# File lib/scout_apm/instruments/percentile_sampler.rb, line 37 def metrics(timestamp, store) store.track_histograms!(percentiles(timestamp), :timestamp => timestamp) end
Source
# File lib/scout_apm/instruments/percentile_sampler.rb, line 41 def percentiles(time) result = [] histogram = histograms.delete(time) return result unless histogram histogram.each_name do |name| result << HistogramReport.new(name, histogram.raw(name)) end result end