# File lib/god/contacts/sensu.rb, line 44 def notify(message, time, priority, category, host) data = { :category => category, :message => message, :priority => priority, :host => host, :time => time, } parcel = { 'name' => arg(:check_name), 'status' => arg(:status_code).nil? ? self.status_code : arg(:status_code), 'output' => data.to_json, 'handler' => arg(:handler).empty? ? self.handler : arg(:handler), 'executed' => Time.now.to_i } sensu_client_socket parcel.to_json self.info = "notified sensu: #{arg(:check_name)}" end
# File lib/god/contacts/sensu.rb, line 38 def sensu_client_socket(msg) u = UDPSocket.new u.send(msg + "\n", 0, arg(:host).nil? ? self.host : arg(:host), arg(:port).nil? ? self.port : arg(:port)) u.close end
# File lib/god/contacts/sensu.rb, line 30 def valid? valid = true valid &= complain("Attribute 'check_name' must be specified", self) unless arg(:check_name) valid end