Class: HealthMonitor::Providers::Sidekiq::Configuration

Inherits:
Base::Configuration show all
Defined in:
lib/health_monitor/providers/sidekiq.rb

Constant Summary collapse

DEFAULT_QUEUE_NAME =
'default'
DEFAULT_LATENCY_TIMEOUT =
30
DEFAULT_QUEUES_SIZE =
100
DEFAULT_RETRY_CHECK =
20

Instance Attribute Summary collapse

Attributes inherited from Base::Configuration

#critical, #name

Instance Method Summary collapse

Constructor Details

#initialize(provider) ⇒ Configuration

Returns a new instance of Configuration.



20
21
22
23
24
25
26
27
# File 'lib/health_monitor/providers/sidekiq.rb', line 20

def initialize(provider)
  super(provider)

  @maximum_amount_of_retries = DEFAULT_RETRY_CHECK

  @queues = {}
  @queues[DEFAULT_QUEUE_NAME] = { latency: DEFAULT_LATENCY_TIMEOUT, queue_size: DEFAULT_QUEUES_SIZE }
end

Instance Attribute Details

#maximum_amount_of_retriesObject

Returns the value of attribute maximum_amount_of_retries.



17
18
19
# File 'lib/health_monitor/providers/sidekiq.rb', line 17

def maximum_amount_of_retries
  @maximum_amount_of_retries
end

#queuesObject (readonly)

Returns the value of attribute queues.



18
19
20
# File 'lib/health_monitor/providers/sidekiq.rb', line 18

def queues
  @queues
end

Instance Method Details

#add_queue_configuration(queue_name, latency: DEFAULT_LATENCY_TIMEOUT, queue_size: DEFAULT_QUEUES_SIZE) ⇒ Object

Raises:



49
50
51
52
53
# File 'lib/health_monitor/providers/sidekiq.rb', line 49

def add_queue_configuration(queue_name, latency: DEFAULT_LATENCY_TIMEOUT, queue_size: DEFAULT_QUEUES_SIZE)
  raise SidekiqException.new('Queue name is mandatory') if queue_name.blank?

  queues[queue_name] = { latency: latency, queue_size: queue_size }
end

#default_queueObject



45
46
47
# File 'lib/health_monitor/providers/sidekiq.rb', line 45

def default_queue
  queues[DEFAULT_QUEUE_NAME]
end

#latencyObject



33
34
35
# File 'lib/health_monitor/providers/sidekiq.rb', line 33

def latency
  default_queue[:latency]
end

#latency=(value) ⇒ Object



29
30
31
# File 'lib/health_monitor/providers/sidekiq.rb', line 29

def latency=(value)
  default_queue[:latency] = value
end

#queue_sizeObject



41
42
43
# File 'lib/health_monitor/providers/sidekiq.rb', line 41

def queue_size
  default_queue[:queue_size]
end

#queue_size=(value) ⇒ Object



37
38
39
# File 'lib/health_monitor/providers/sidekiq.rb', line 37

def queue_size=(value)
  default_queue[:queue_size] = value
end