Class: SolidObserver::Services::HealthScore

Inherits:
Object
  • Object
show all
Defined in:
lib/solid_observer/services/health_score.rb

Constant Summary collapse

STATUS_RANK =
{stable: 0, degraded: 1, critical: 2}.freeze
UNAVAILABLE =
{status: :degraded, available: false}.freeze
WINDOW =
15.minutes

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.callObject



12
13
14
# File 'lib/solid_observer/services/health_score.rb', line 12

def self.call
  new.call
end

Instance Method Details

#callObject



16
17
18
19
20
21
22
# File 'lib/solid_observer/services/health_score.rb', line 16

def call
  components = collect_components
  {
    overall: overall_status(components.values.map { |entry| entry[:status] }),
    components: components
  }
end