Kouhei Sutou
null+****@clear*****
Mon Mar 17 16:41:08 JST 2014
Kouhei Sutou 2014-03-17 16:41:08 +0900 (Mon, 17 Mar 2014) New Revision: a83fd560c168cdd540cfacfbd6c745af00a6f812 https://github.com/droonga/fluent-plugin-droonga/commit/a83fd560c168cdd540cfacfbd6c745af00a6f812 Message: Fix auto re-connection to other f-p-d Modified files: lib/droonga/fluent_message_sender.rb Modified: lib/droonga/fluent_message_sender.rb (+10 -1) =================================================================== --- lib/droonga/fluent_message_sender.rb 2014-03-17 16:38:06 +0900 (b836a3d) +++ lib/droonga/fluent_message_sender.rb 2014-03-17 16:41:08 +0900 (3c40ffb) @@ -28,6 +28,7 @@ module Droonga @loop = loop @host = host @port = port + @connected = false end def start @@ -44,7 +45,7 @@ module Droonga def send(tag, data) logger.trace("send: start") - connect if****@socke*****? + connect unless @connected fluent_message = [tag, Time.now.to_i, data] packed_fluent_message = MessagePackPacker.pack(fluent_message) @socket.write(packed_fluent_message) @@ -61,11 +62,16 @@ module Droonga end log_connect = lambda do logger.trace("connected to #{@host}:#{@port}") + @connected = true end log_failed = lambda do logger.error("failed to connect to #{@host}:#{@port}") end + on_close = lambda do + @connected = false + end + @connected = false @socket = Coolio::TCPSocket.connect(@host, @port) @socket.on_write_complete do log_write_complete.call @@ -76,6 +82,9 @@ module Droonga @socket.on_connect_failed do log_failed.call end + @socket.on_close do + on_close.call + end @loop.attach(@socket) logger.trace("connect: done") -------------- next part -------------- HTML����������������������������...Download