class LogStash::Outputs::Courier

Send events using the Log Courier protocol

Public Instance Methods

close() click to toggle source

Logstash >= 2.0.0 shutdown

# File lib/logstash/outputs/courier.rb, line 78
def close
  @client.shutdown
  finished
  nil
end
receive(event) click to toggle source
# File lib/logstash/outputs/courier.rb, line 67
def receive(event)
  return unless output?(event)
  @client.publish event.to_hash
end
register() click to toggle source
# File lib/logstash/outputs/courier.rb, line 60
def register
  @logger.info 'Starting courier output'

  require 'log-courier/client'
  @client = LogCourier::Client.new(options)
end
teardown() click to toggle source

Logstash < 2.0.0 shutdown

# File lib/logstash/outputs/courier.rb, line 73
def teardown
  close
end

Private Instance Methods

addresses() click to toggle source
# File lib/logstash/outputs/courier.rb, line 99
def addresses
  # TODO: Fix this naming inconsistency
  @hosts
end
options() click to toggle source
# File lib/logstash/outputs/courier.rb, line 86
def options
  result = {}

  [
    :logger, :addresses, :port, :ssl_ca, :ssl_certificate, :ssl_key,
    :ssl_key_passphrase, :spool_size, :idle_timeout
  ].each do |k|
    result[k] = send(k)
  end

  result
end