class SidekiqMonitoring::Queue
Constants
- DEFAULT_LATENCY_THRESHOLD
- DEFAULT_THRESHOLD
Attributes
latency[RW]
latency_critical_threshold[RW]
latency_warning_threshold[RW]
name[R]
queue_size_critical_threshold[RW]
queue_size_warning_threshold[RW]
size[R]
Public Class Methods
new(name, size, latency, queue_size_thresholds = nil, latency_thresholds = nil)
click to toggle source
# File lib/sidekiq-monitoring.rb, line 107 def initialize(name, size, latency, queue_size_thresholds = nil, latency_thresholds = nil) @name = name @size = size @latency = latency @queue_size_warning_threshold, @queue_size_critical_threshold = (queue_size_thresholds ? queue_size_thresholds : DEFAULT_THRESHOLD) @latency_warning_threshold, @latency_critical_threshold = (latency_thresholds ? latency_thresholds : DEFAULT_LATENCY_THRESHOLD) @status = monitoring_status end
Public Instance Methods
as_json()
click to toggle source
# File lib/sidekiq-monitoring.rb, line 116 def as_json { 'name' => name, 'status' => status, 'size' => size, 'queue_size_warning_threshold' => queue_size_warning_threshold, 'queue_size_critical_threshold' => queue_size_critical_threshold, 'latency' => latency, 'latency_warning_threshold' => latency_warning_threshold, 'latency_critical_threshold' => latency_critical_threshold } end
monitoring_status()
click to toggle source
# File lib/sidekiq-monitoring.rb, line 129 def monitoring_status return 'CRITICAL' if size >= queue_size_critical_threshold || latency >= latency_critical_threshold return 'WARNING' if size >= queue_size_warning_threshold || latency >= latency_warning_threshold 'OK' end