Module: Common

Defined in:
lib/sensu-plugins-mailgun/common.rb

Instance Method Summary collapse

Instance Method Details

#get_check_last_runtime(client, check) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/sensu-plugins-mailgun/common.rb', line 7

def get_check_last_runtime(client, check)
  request = RestClient::Resource.new(
    "#{config[:sensu_scheme]}://#{config[:sensu_api]}:#{config[:sensu_port]}/#{client}/#{check}",
    timeout: config[:sensu_timeout],
    user: config[:sensu_user],
    password: config[:sensu_password]
  )
  check = JSON.parse(request.get, symbolize_names: true)
  Time.at(check[:check][:issued])
rescue RestClient::ResourceNotFound
  nil
rescue Errno::ECONNREFUSED
  warning 'Connection refused'
rescue RestClient::RequestFailed
  warning 'Request failed'
rescue RestClient::RequestTimeout
  warning 'Connection timed out'
rescue RestClient::Unauthorized
  warning 'Missing or incorrect Sensu API credentials'
rescue JSON::ParserError
  warning 'Sensu API returned invalid JSON'
end

#initializeObject



3
4
5
# File 'lib/sensu-plugins-mailgun/common.rb', line 3

def initialize
  super()
end