class NetuitiveD::EventHandler
Public Class Methods
new(apiEmissary)
click to toggle source
# File lib/netuitived/event_handler.rb, line 3 def initialize(apiEmissary) @apiEmissary = apiEmissary end
Public Instance Methods
handleEvent(message, timestamp, title, level, source, type, tags)
click to toggle source
# File lib/netuitived/event_handler.rb, line 17 def handleEvent(message, timestamp, title, level, source, type, tags) NetuitiveD::ErrorLogger.guard('exception during handleEvent') do NetuitiveD::NetuitiveLogger.log.debug "self: #{object_id}" NetuitiveD::NetuitiveLogger.log.debug "Thread: #{Thread.current.object_id}" NetuitiveD::NetuitiveLogger.log.debug "Received event: message:#{message}, timestamp:#{timestamp}, title:#{title}, level:#{level}, source:#{source}, type:#{type}, tags:#{tags}" event = NetuitiveD::IngestEvent.new(NetuitiveD::ConfigManager.elementName, message, timestamp, title, level, source, type, tags) events = [event] eventString = events.to_json @apiEmissary.sendEvents(eventString) end end
handleExceptionEvent(exception, klass, tags = {})
click to toggle source
# File lib/netuitived/event_handler.rb, line 29 def handleExceptionEvent(exception, klass, tags = {}) NetuitiveD::ErrorLogger.guard('exception during handleExceptionEvent') do message = "Exception Message: #{exception[:message]}\n" if (defined? exception[:message]) && !exception[:message].nil? message ||= '' timestamp = Time.new title = 'Ruby Exception' level = 'Warning' source = 'Ruby Agent' type = 'INFO' ingest_tags = [] tags ||= {} tags [:Exception] = klass unless klass.nil? tags.each do |key, value| next if !(defined? value) || value.nil? || value == '' ingest_tags << NetuitiveD::IngestTag.new(key, value) message += "#{key}: #{value}\n" end message += "Backtrace:\n\t#{exception[:backtrace]}" if (defined? exception[:backtrace]) && !exception[:backtrace].nil? handleEvent(message, timestamp, title, level, source, type, ingest_tags) end end
handle_events(events)
click to toggle source
# File lib/netuitived/event_handler.rb, line 7 def handle_events(events) return unless events && !events.nil? events.each { |event| handleEvent(event[:message], event[:timestamp], event[:title], event[:level], event[:source], event[:type], event[:tags]) } end
handle_exception_events(events)
click to toggle source
# File lib/netuitived/event_handler.rb, line 12 def handle_exception_events(events) return unless events && !events.nil? events.each { |event| handleExceptionEvent(event[:exception], event[:klass], event[:tags]) } end