Module: Sidekiq::Instrument::MetricNames

Included in:
ClientMiddleware, ServerMiddleware
Defined in:
lib/sidekiq/instrument/mixin.rb

Constant Summary collapse

DEFAULT_MAX_RETRY_ATTEMPTS =

25 retries is Sidekiq's default if not otherwise set: https://github.com/sidekiq/sidekiq/wiki/Error-Handling#automatic-job-retry

25

Instance Method Summary collapse

Instance Method Details

#max_retries(worker) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/sidekiq/instrument/mixin.rb', line 22

def max_retries(worker)
  retries = fetch_worker_retry(worker)
  case retries.to_s
  when "true", ""
    if Sidekiq.respond_to?(:default_configuration) # Sidekiq 7.0+
      Sidekiq.default_configuration[:max_retries]
    else                                           # Sidekiq 6
      Sidekiq[:max_retries]
    end || DEFAULT_MAX_RETRY_ATTEMPTS
  when "false"
    0
  else
    retries
  end
end

#metric_name(worker, job, event) ⇒ Object



5
6
7
8
9
10
11
# File 'lib/sidekiq/instrument/mixin.rb', line 5

def metric_name(worker, job, event)
  if worker.respond_to?(:statsd_metric_name)
    worker.send(:statsd_metric_name, event)
  else
    "shared.sidekiq.#{queue_name(job)}.#{class_name(worker)}.#{event}"
  end
end

#worker_dog_options(worker, job) ⇒ Object



13
14
15
16
17
18
19
20
# File 'lib/sidekiq/instrument/mixin.rb', line 13

def worker_dog_options(worker, job)
  {
    tags: [
      "queue:#{queue_name(job)}",
      "worker:#{underscore(class_name(worker))}"
    ].concat(job.fetch('tags', []))
  }
end