Module: DashingContrib::Jobs::NagiosList

Extended by:
RunnableJob
Defined in:
lib/dashing-contrib/jobs/nagios_list.rb

Constant Summary

Constants included from RunnableJob

RunnableJob::CRITICAL, RunnableJob::OK, RunnableJob::WARNING

Class Method Summary collapse

Methods included from RunnableJob

metrics, run, validate_state

Class Method Details

.metrics(options) ⇒ Object

Returns format

critical:[],
warning:[],
ok:[]



15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/dashing-contrib/jobs/nagios_list.rb', line 15

def self.metrics(options)
  client = DashingContrib::Nagios::Client.new({
    username: options[:username],
    endpoint: options[:endpoint],
    password: options[:password],
    version: options[:version] || 3,
    time_format: options[:time_format] || 'iso8601',
    verify_ssl: options[:verify_ssl] || true,
  })

  client.status(options[:nagios_filter] || {})
end

.validate_state(metrics, options = {}) ⇒ Object



28
29
30
31
32
# File 'lib/dashing-contrib/jobs/nagios_list.rb', line 28

def self.validate_state(metrics, options = {})
  return DashingContrib::RunnableJob::CRITICAL unless metrics[:critical].size.zero?
  return DashingContrib::RunnableJob::WARNING unless metrics[:warning].size.zero?
  DashingContrib::RunnableJob::OK
end