Sha256: ee2a8b0735da0d06a64db01600c81e1a744fc987306149681ae9eb178186d3dc

Contents?: true

Size: 518 Bytes

Versions: 6

Compression:

Stored size: 518 Bytes

Contents

module NewrelicSidekiqMetrics
  class Recorder
    attr_reader :metrics

    def initialize
      @metrics = NewrelicSidekiqMetrics.used_metrics
    end

    def call
      metrics.each { |m| record_metric(m) }
    end

    def stats
      @stats ||= Sidekiq::Stats.new
    end

    private

    def record_metric(name)
      NewRelic::Agent.record_metric(metric_full_name(name), stats.public_send(name))
    end

    def metric_full_name(name)
      File.join(METRIC_PREFIX, METRIC_MAP.fetch(name))
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
newrelic-sidekiq-metrics-1.1.1 lib/newrelic_sidekiq_metrics/recorder.rb
newrelic-sidekiq-metrics-1.1.0 lib/newrelic_sidekiq_metrics/recorder.rb
newrelic-sidekiq-metrics-1.0.6 lib/newrelic_sidekiq_metrics/recorder.rb
newrelic-sidekiq-metrics-1.0.3 lib/newrelic_sidekiq_metrics/recorder.rb
newrelic-sidekiq-metrics-1.0.2 lib/newrelic_sidekiq_metrics/recorder.rb
newrelic-sidekiq-metrics-1.0.1 lib/newrelic_sidekiq_metrics/recorder.rb