Class: LogStash::Outputs::TestSink

Inherits:
Base
  • Object
show all
Defined in:
lib/logstash/outputs/test_sink.rb

Overview

This output simply discards (but tracks) received events.

Defined Under Namespace

Classes: Queue

Constant Summary collapse

TRACKER =
java.util.WeakHashMap.new

Instance Method Summary collapse

Instance Method Details

#clear!Object

Clears the event store.



47
48
49
# File 'lib/logstash/outputs/test_sink.rb', line 47

def clear!
  event_store.clear
end

#closeObject



34
35
36
# File 'lib/logstash/outputs/test_sink.rb', line 34

def close
  TRACKER.delete(self) if release_on_close?
end

#event_storeQueue

Returns (enumerable) event store.

Returns:

  • (Queue)

    (enumerable) event store



52
53
54
# File 'lib/logstash/outputs/test_sink.rb', line 52

def event_store
  TRACKER[self] || raise("#{self} not registered; please call plugin.register before use")
end

#receive(event) ⇒ Object



29
30
31
# File 'lib/logstash/outputs/test_sink.rb', line 29

def receive(event)
  event_store << event if store_events?
end

#registerObject



24
25
26
# File 'lib/logstash/outputs/test_sink.rb', line 24

def register
  TRACKER[self] = Queue.new(@event_poll_timeout.to_f * 1000)
end

#release_on_close?Boolean

Returns:

  • (Boolean)


42
43
44
# File 'lib/logstash/outputs/test_sink.rb', line 42

def release_on_close?
  !!@release_on_close
end

#store_events?Boolean

Returns:

  • (Boolean)


38
39
40
# File 'lib/logstash/outputs/test_sink.rb', line 38

def store_events?
  !!@store_events
end