Class: SidekiqVigil::Check::ProcessAlive

Inherits:
Base
  • Object
show all
Defined in:
lib/sidekiq_vigil/check/process_alive.rb

Instance Attribute Summary

Attributes inherited from Base

#api, #clock, #logger, #options, #storage

Instance Method Summary collapse

Methods inherited from Base

#check_name, #execute, #initialize

Constructor Details

This class inherits a constructor from SidekiqVigil::Check::Base

Instance Method Details

#callObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/sidekiq_vigil/check/process_alive.rb', line 6

def call
  processes = api.processes
  minimum = options.fetch(:min_processes, 1)
  active = processes.count { |process| active?(process) }
  severity = active < minimum ? :critical : :ok

  Result.new(
    check_name:,
    severity:,
    value: active,
    threshold: minimum,
    message: "#{active}/#{minimum} required processes alive",
    metadata: { total: processes.size }
  )
end