Class: Webhookdb::Jobs::MonitorMetrics

Inherits:
Object
  • Object
show all
Extended by:
Async::ScheduledJob
Defined in:
lib/webhookdb/jobs/monitor_metrics.rb

Overview

Log out some metrics every minute.

Instance Method Summary collapse

Methods included from Async::ScheduledJob

extended

Instance Method Details

#_performObject



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/webhookdb/jobs/monitor_metrics.rb', line 13

def _perform
  opts = {}
  max_size = 0
  max_latency = 0
  Sidekiq::Queue.all.each do |q|
    size = q.size
    latency = q.latency
    max_size = [max_size, size].max
    max_latency = [max_latency, latency].max
    opts["#{q.name}_size"] = size
    opts["#{q.name}_latency"] = latency
  end
  opts[:max_size] = max_size
  opts[:max_latency] = max_latency
  self.logger.info("metrics_monitor_queue", **opts)
end