class DogEventer::NagiosCheck

Attributes

host[R]

Public Class Methods

new(check_name, host, start_time) click to toggle source
# File lib/dogeventer/event_emitter.rb, line 13
def initialize(check_name, host, start_time)
  @check_name = check_name
  @host = host
  @start_time = start_time
  @events = []
end

Public Instance Methods

alert_type(state) click to toggle source
# File lib/dogeventer/event_emitter.rb, line 32
def alert_type(state)
  {
    :critical => :error,
    :ok       => :success,
    :warning  => :warning,
    :warn     => :warn
  }[state]
end
critical(date=nil) click to toggle source
# File lib/dogeventer/event_emitter.rb, line 61
def critical(date=nil)
  to_event :critical
end
date_happened(date=nil) click to toggle source
# File lib/dogeventer/event_emitter.rb, line 41
def date_happened(date=nil)
  (date || @start_time).to_i
end
event_object() click to toggle source
# File lib/dogeventer/event_emitter.rb, line 24
def event_object()
  @check_name
end
event_type() click to toggle source
# File lib/dogeventer/event_emitter.rb, line 28
def event_type()
  "monitoring.alert"
end
msg_title(alert_state) click to toggle source
# File lib/dogeventer/event_emitter.rb, line 20
def msg_title(alert_state)
  "#{@check_name} is #{alert_state.to_s} on #{@host}"
end
ok(date=nil) click to toggle source
# File lib/dogeventer/event_emitter.rb, line 69
def ok(date=nil)
  to_event :ok
end
source_type_name() click to toggle source
# File lib/dogeventer/event_emitter.rb, line 45
def source_type_name()
  "Nagios"
end
to_event(alert_state, date=nil) click to toggle source
# File lib/dogeventer/event_emitter.rb, line 49
def to_event(alert_state, date=nil)
  @events << {
    :event_object  => event_object,
    :event_type    => event_type,
    :alert_type    => alert_type(alert_state),
    :date_happened => date_happened(date),
    :msg_title     => msg_title(alert_state),
    :source_type_name => source_type_name,
    :host          => host
  }
end
warning(date=nil) click to toggle source
# File lib/dogeventer/event_emitter.rb, line 65
def warning(date=nil)
  to_event :warning
end