Class: AbrilHeartbeat::RestChecker

Inherits:
AbstractChecker show all
Defined in:
lib/abril_heartbeat/checkers/rest_checker.rb

Class Method Summary collapse

Class Method Details

.check!Object



22
23
24
25
26
27
28
29
30
# File 'lib/abril_heartbeat/checkers/rest_checker.rb', line 22

def self.check!
  url = yield
  response = RestClient.get(url)
  [response.code, 'OK']
rescue RestClient::ResourceNotFound
  [404, 'Page Not Found']
rescue => exception
  [nil, exception.message]
end

.module_nameObject



18
19
20
# File 'lib/abril_heartbeat/checkers/rest_checker.rb', line 18

def self.module_name
  'REST'
end

.run!Object



9
10
11
12
13
14
15
16
# File 'lib/abril_heartbeat/checkers/rest_checker.rb', line 9

def self.run!
  messages = rest_hash.map do |key, value|
    status, message = check! { value['url'] }
    { key => { 'url' => value['url'], 'status' => status, 'status_message' => message } }
  end

  { module_name => messages }
end

.running?Boolean



5
6
7
# File 'lib/abril_heartbeat/checkers/rest_checker.rb', line 5

def self.running?
  !rest_hash.empty?
end