Class: Healthyr::EventAgent

Inherits:
Object
  • Object
show all
Defined in:
lib/healthyr/event_agent.rb

Defined Under Namespace

Classes: AgentThread, Envelope

Instance Method Summary collapse

Constructor Details

#initialize(monitor_url, update_interval) ⇒ EventAgent

Returns a new instance of EventAgent.



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/healthyr/event_agent.rb', line 4

def initialize(monitor_url, update_interval)
  AgentThread.new(update_interval) do
    events = EventPool.flush
    envelope = Envelope.new(events)

    begin
      response = Net::HTTP.post_form(monitor_url, {data: envelope.content})
      if response.code != 200
        Rails.logger.error "Healthyr failed to send data to monitor"
      end
    rescue Errno::ECONNREFUSED
      Rails.logger.error "Healthyr could not connect to '#{monitor_url}'"
    end
  end
end