class LogStash::Outputs::Lumberjack

Public Instance Methods

receive(event) click to toggle source
# File lib/logstash/outputs/lumberjack.rb, line 26
def receive(event)
  return unless output?(event)
  begin
    @client.write(event.to_hash)
  rescue Exception => e
    @logger.error("Client write error", :e => e, :backtrace => e.backtrace)
    connect
    retry
  end
end
register() click to toggle source
# File lib/logstash/outputs/lumberjack.rb, line 20
def register
  require 'lumberjack/client'
  connect
end

Private Instance Methods

connect() click to toggle source
# File lib/logstash/outputs/lumberjack.rb, line 38
def connect
  @logger.info("Connecting to lumberjack server.", :addresses => @hosts, :port => @port, 
      :ssl_certificate => @ssl_certificate, :window_size => @window_size)
  begin
    @client = Lumberjack::Client.new(:addresses => @hosts, :port => @port, 
      :ssl_certificate => @ssl_certificate, :window_size => @window_size)
  rescue Exception => e
    @logger.error("All hosts unavailable, sleeping", :hosts => @hosts, :e => e, 
      :backtrace => e.backtrace)
    sleep(10)
    retry
  end
end