class Nexaas::QueueTime::Sidekiq

Measures the latency for all Sidekiq queues and send it to Datadog.

Constants

METRIC_NAME

Public Class Methods

measure_latency() click to toggle source
# File lib/nexaas/queue_time/sidekiq.rb, line 19
def self.measure_latency
  ::Sidekiq::Queue.all.each do |queue|
    latency_in_ms = (queue.latency * 1000).ceil
    opts = {
      sample_rate: 1,
      tags: { queue_name: queue.name }
    }
    DogStatsd.timing(METRIC_NAME, latency_in_ms, opts)
  end
end