class LogStash::Outputs::CassandraOutput

Public Instance Methods

close() click to toggle source
# File lib/logstash/outputs/cassandra.rb, line 135
def close
  @buffer.stop
end
flush() click to toggle source
# File lib/logstash/outputs/cassandra.rb, line 139
def flush
  @buffer.flush
end
multi_receive(events) click to toggle source
# File lib/logstash/outputs/cassandra.rb, line 125
def multi_receive(events)
  events.each_slice(@flush_size) do |slice|
    @safe_submitter.submit(slice.map {|event| @event_parser.parse(event) })
  end
end
receive(event) click to toggle source
# File lib/logstash/outputs/cassandra.rb, line 121
def receive(event)
  @buffer << @event_parser.parse(event)
end
register() click to toggle source
# File lib/logstash/outputs/cassandra.rb, line 115
def register
  setup_event_parser
  setup_safe_submitter
  setup_buffer_and_handler
end
teardown() click to toggle source
# File lib/logstash/outputs/cassandra.rb, line 131
def teardown
  close
end

Private Instance Methods

setup_buffer_and_handler() click to toggle source
# File lib/logstash/outputs/cassandra.rb, line 161
def setup_buffer_and_handler
  @buffer = ::LogStash::Outputs::Cassandra::Buffer.new(@logger, @flush_size, @idle_flush_time) do |actions|
    @safe_submitter.submit(actions)
  end
end
setup_event_parser() click to toggle source
# File lib/logstash/outputs/cassandra.rb, line 144
def setup_event_parser
  @event_parser = ::LogStash::Outputs::Cassandra::EventParser.new(
    'logger' => @logger, 'table' => @table,
    'filter_transform_event_key' => @filter_transform_event_key, 'filter_transform' => @filter_transform,
    'hints' => @hints, 'ignore_bad_values' => @ignore_bad_values
  )
end
setup_safe_submitter() click to toggle source
# File lib/logstash/outputs/cassandra.rb, line 152
def setup_safe_submitter
  @safe_submitter = ::LogStash::Outputs::Cassandra::SafeSubmitter.new(
    'logger' => @logger, 'cassandra' => ::Cassandra,
    'hosts' => @hosts, 'port' => @port, 'username' => @username, 'password' => @password,
    'consistency' => @consistency, 'request_timeout' => @request_timeout, 'retry_policy' => @retry_policy,
    'keyspace' => @keyspace
  )
end