Class: Droonga::FluentMessageSender
- Inherits:
-
Object
- Object
- Droonga::FluentMessageSender
- Includes:
- Loggable
- Defined in:
- lib/droonga/fluent_message_sender.rb
Instance Method Summary collapse
-
#initialize(loop, host, port) ⇒ FluentMessageSender
constructor
A new instance of FluentMessageSender.
- #send(tag, data) ⇒ Object
- #shutdown ⇒ Object
- #start ⇒ Object
Constructor Details
#initialize(loop, host, port) ⇒ FluentMessageSender
Returns a new instance of FluentMessageSender.
29 30 31 32 33 34 35 36 |
# File 'lib/droonga/fluent_message_sender.rb', line 29 def initialize(loop, host, port) @loop = loop @host = host @port = port @socket = nil @buffer = [] @write_mutex = Mutex.new end |
Instance Method Details
#send(tag, data) ⇒ Object
51 52 53 54 55 56 57 58 59 60 |
# File 'lib/droonga/fluent_message_sender.rb', line 51 def send(tag, data) logger.trace("send: start") = [tag, Time.now.to_i, data] = MessagePackPacker.pack() @write_mutex.synchronize do @buffer << @writer.signal end logger.trace("send: done") end |
#shutdown ⇒ Object
44 45 46 47 48 49 |
# File 'lib/droonga/fluent_message_sender.rb', line 44 def shutdown logger.trace("shutdown: start") shutdown_writer shutdown_socket logger.trace("shutdown: done") end |
#start ⇒ Object
38 39 40 41 42 |
# File 'lib/droonga/fluent_message_sender.rb', line 38 def start logger.trace("start: start") start_writer logger.trace("start: done") end |