class Rack::Healthcheck::Actions::Complete

Public Instance Methods

get() click to toggle source
# File lib/rack/healthcheck/actions/complete.rb, line 13
def get
  perform
  ["200", { "Content-Type" => "application/json" }, [result.to_json]]
end

Private Instance Methods

perform() click to toggle source
# File lib/rack/healthcheck/actions/complete.rb, line 36
def perform
  threads = Rack::Healthcheck.configuration.checks.map do |check|
    Thread.new { check.run }
  end

  threads.each(&:join)
end
result() click to toggle source
# File lib/rack/healthcheck/actions/complete.rb, line 20
def result
  results = []
  status  = true
  Rack::Healthcheck.configuration.checks.each do |check|
    status = (status == true && check.keep_in_pool?)
    results << check.to_hash
  end

  {
    name: Rack::Healthcheck.configuration.app_name,
    status: status,
    version: Rack::Healthcheck.configuration.app_version,
    checks: results
  }
end