Class: Droonga::FluentMessageSender

Inherits:
Object
  • Object
show all
Defined in:
lib/droonga/fluent_message_sender.rb

Instance Method Summary collapse

Constructor Details

#initialize(loop, host, port) ⇒ FluentMessageSender

Returns a new instance of FluentMessageSender.



23
24
25
26
27
# File 'lib/droonga/fluent_message_sender.rb', line 23

def initialize(loop, host, port)
  @loop = loop
  @host = host
  @port = port
end

Instance Method Details

#send(tag, data) ⇒ Object



41
42
43
44
45
46
47
48
49
# File 'lib/droonga/fluent_message_sender.rb', line 41

def send(tag, data)
  $log.trace("#{log_tag}: send: start")
  connect if @socket.closed?
  fluent_message = [tag, Time.now.to_i, data]
  packed_fluent_message = MessagePackPacker.pack(fluent_message)
  @socket.write(packed_fluent_message)
  @loop.break_current_loop
  $log.trace("#{log_tag}: send: done")
end

#shutdownObject



35
36
37
38
39
# File 'lib/droonga/fluent_message_sender.rb', line 35

def shutdown
  $log.trace("#{log_tag}: shutdown: start")
  @socket.close unless @socket.closed?
  $log.trace("#{log_tag}: shutdown: done")
end

#startObject



29
30
31
32
33
# File 'lib/droonga/fluent_message_sender.rb', line 29

def start
  $log.trace("#{log_tag}: start: start")
  connect
  $log.trace("#{log_tag}: start: done")
end