logstash-plugins/logstash-input-couchdb_changes

couchdb_changes errors with elasticsearch-5.4.0/logstash-5.4.0

Opened this issue · 2 comments

Product Version:
Linux: Scientific Linux release 6.9 (Carbon)
ElasticSearch: 5.4.0
Logstash: 5.4.0

NOTE:
I switched to elasticsearch-2.4.5/logstash-2.4.1, things work and I do see couchdb docs being indexed.

Error:

[2017-05-24T10:15:53,448][ERROR][logstash.pipeline ] A plugin had an unrecoverable error. Will restart this plugin.
Plugin: <LogStash::Inputs::CouchDBChanges db=>"test_records", host=>"localhost", port=>5984, username=>"testuser", password=>, type=>"testrecord", id=>"d40b67707aa833e121278b5707e80d096282d5b0-1", enable_metric=>true, codec=><LogStash::Codecs::Plain id=>"plain_085d033a-038b-4f14-839e-f36170784405", enable_metric=>true, charset=>"UTF-8">, secure=>false, heartbeat=>1000, keep_id=>false, keep_revision=>false, ignore_attachments=>true, always_reconnect=>true, reconnect_delay=>10>
Error: Direct event field references (i.e. event['field']) have been disabled in favor of using event get and set methods (e.g. event.get('field')). Please consult the Logstash 5.0 breaking changes documentation for more details.
Exception: NoMethodError
Stack: /home/testuser/Project/ElasticSearch/logstash-5.4.0/logstash-core/lib/logstash/event.rb:48:in method_missing' /home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/bundle/jruby/1.9/gems/logstash-input-couchdb_changes-3.1.0/lib/logstash/inputs/couchdb_changes.rb:180:in run'
org/jruby/RubyArray.java:1613:in each' /home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/bundle/jruby/1.9/gems/logstash-input-couchdb_changes-3.1.0/lib/logstash/inputs/couchdb_changes.rb:167:in run'
/home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/protocol.rb:395:in call_block' /home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/protocol.rb:386:in <<'
/home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/protocol.rb:94:in read' /home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/http.rb:2785:in read_chunked'
/home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/http.rb:2759:in read_body_0' /home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/http.rb:2719:in read_body'
/home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/bundle/jruby/1.9/gems/logstash-input-couchdb_changes-3.1.0/lib/logstash/inputs/couchdb_changes.rb:166:in run' /home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/http.rb:1331:in transport_request'
/home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/http.rb:2680:in reading_body' /home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/http.rb:1330:in transport_request'
org/jruby/RubyKernel.java:1242:in catch' /home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/http.rb:1325:in transport_request'
/home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/http.rb:1302:in request' /home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/bundle/jruby/1.9/gems/logstash-input-couchdb_changes-3.1.0/lib/logstash/inputs/couchdb_changes.rb:161:in run'
/home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/http.rb:746:in start' /home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/jruby/lib/ruby/1.9/net/http.rb:557:in start'
/home/testuser/Project/ElasticSearch/logstash-5.4.0/vendor/bundle/jruby/1.9/gems/logstash-input-couchdb_changes-3.1.0/lib/logstash/inputs/couchdb_changes.rb:157:in run' /home/testuser/Project/ElasticSearch/logstash-5.4.0/logstash-core/lib/logstash/pipeline.rb:443:in inputworker'
/home/testuser/Project/ElasticSearch/logstash-5.4.0/logstash-core/lib/logstash/pipeline.rb:436:in `start_input'
[2017-05-24T10:15:53,455][DEBUG][logstash.pipeline ] filter received {"event"=>{"@timestamp"=>2017-05-24T04:45:53.441Z, "@Version"=>"1", "type"=>"testrecord"}}
[2017-05-24T10:15:53,457][DEBUG][logstash.pipeline ] output received {"event"=>{"@timestamp"=>2017-05-24T04:45:53.441Z, "@Version"=>"1", "type"=>"testrecord"}}
[2017-05-24T10:15:54,448][INFO ][logstash.inputs.couchdbchanges] Connecting to CouchDB _changes stream at: {:host=>"localhost", :port=>"5984", :db=>"test_records"}
[2017-05-24T10:15:54,449][INFO ][logstash.inputs.couchdbchanges] Using service uri : {:uri=>#<URI::HTTP:0x4cd57dfd URL:http://localhost:5984/test_records/_changes?feed=continuous&include_docs=true&since=12&heartbeat=1000>}
[2017-05-24T10:15:54,452][DEBUG][logstash.inputs.couchdbchanges] event {:event=>{"@timestamp"=>2017-05-24T04:45:54.452Z, "@metadata"=>{"action"=>"delete", "_id"=>"5caeebe11c9b9343aa109550ac004fd9", "seq"=>13}, "@Version"=>"1"}}
[2017-05-24T10:15:54,452][DEBUG][logstash.inputs.couchdbchanges] event {:event=>{"@timestamp"=>2017-05-24T04:45:54.452Z, "@metadata"=>{"action"=>"delete", "_id"=>"5caeebe11c9b9343aa109550ac004fd9", "seq"=>13}, "@Version"=>"1"}}

It looks like this plugin is not compatible with Logstash 5.x

Thanks for the info @jordansissel.Then I would stick to the stable penultimate major series 2.x for elasticsearch and logstash.