hirano_verf****@mail*****
hirano_verf****@mail*****
2013年 8月 7日 (水) 20:20:15 JST
お世話になっております。平野と申します。 http://groonga.org/fluent-plugin-groonga/ja/file.constitution.html を参考にfluent-plugin-groongaを使い始めています。 「中規模のシステム」と同じ構成をとっていまして、マスターgroongaサーバー側にfluentdを置いています。 下記のfluentd設定で動作させるとマスターにはtable_createコマンドが飛ぶのですが、スレーブは無反応です。 ==================================== <source> type groonga protocol gqtp port 10000 real_host 192.168.1.10 real_port 10041 </source> <match groonga.command.*> type copy <store> type groonga protocol gqtp host 192.168.1.20 port 10141 flush_interval 1s </store> <store> type groonga protocol gqtp host 192.168.1.21 port 10141 flush_interval 1s </store> </match> ==================================== また、fluentdのログには下記メッセージが繰り返し出力されます。 ==================================== 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:327:rescue in try_flush: temporarily failed to flush the buffer. next_retry=2013-08-07 15:01:17 +0900 error_class="RuntimeError" error="no watchers for this loop" instance=249001220 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/cool.io-1.1.0/lib/cool.io/loop.rb:92:in `run' 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/fluent-plugin-groonga-1.0.1/lib/fluent/plugin/out_groonga.rb:143:in `send' 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/fluent-plugin-groonga-1.0.1/lib/fluent/plugin/out_groonga.rb:73:in `send_command' 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/fluent-plugin-groonga-1.0.1/lib/fluent/plugin/out_groonga.rb:62:in `block in write' 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/fluentd-0.10.35/lib/fluent/plugin/buf_memory.rb:64:in `feed_each' 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/fluentd-0.10.35/lib/fluent/plugin/buf_memory.rb:64:in `msgpack_each' 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/fluent-plugin-groonga-1.0.1/lib/fluent/plugin/out_groonga.rb:59:in `write' 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/fluentd-0.10.35/lib/fluent/buffer.rb:290:in `write_chunk' 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/fluentd-0.10.35/lib/fluent/buffer.rb:274:in `pop' 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/fluentd-0.10.35/lib/fluent/output.rb:294:in `try_flush' 2013-08-07 15:01:16 +0900 [warn]: fluent/output.rb:328:rescue in try_flush: /usr/local/lib/ruby/gems/1.9.1/gems/fluentd-0.10.35/lib/fluent/output.rb:121:in `run' ==================================== [環境] CentOS 5.5(x86_64) ruby 1.9.3p392 groonga 3.0.1 [gem](抜粋) cool.io (1.1.0) fluent-plugin-groonga (1.0.1) fluentd (0.10.35) gqtp (1.0.3) 試行錯誤しまして、/usr/local/lib/ruby/gems/1.9.1/gems/fluent-plugin-groonga-1.0.1/lib/fluent/plugin/out_groonga.rb に手を加えたら動作するようになりました。 ==================================== % diff out_groonga.rb out_groonga.rb.orig 137d136 < :address => @host, ==================================== このアプローチが正しいのかわかりませんが、ひとまずご報告させていただきます。