Logstash 5 Alpha4到elasticsearch5 Alpha4通信错误

Gau*_*v J 5 elasticsearch logstash

Elasticsearch 5使用xpack安全保护,并与ldap挂钩,工作正常.甚至用户也有管理权role_mapping.

Logstash 5配置如下

output {
  elasticsearch {
    hosts => ['localhost:9200']
    user => 'gaurav@gmail.com'
    password => 'pwd'
  }
}
Run Code Online (Sandbox Code Playgroud)

获得以下错误,因为logstash无法将数据传递给elasticsearch.

{:timestamp=>"2016-07-14T16:32:29.592000+0530", 
:message=>"Encountered an unexpected error submitting a bulk request! Will retry.", 
:error_message=>"undefined method code' for #", 
:class=>"NoMethodError", :backtrace=>["/usr/share/logstash/vendor/bundle/jruby/1.9/gems/logstash-output-elasticsearch-4.1.1-java/lib/logstash/outputs/elasticsearch/common.rb:217:insafe_bulk'", "/usr/share/logstash/vendor/bundle/jruby/1.9/gems/logstash-output-elasticsearch-4.1.1-java/lib/logstash/outputs/elasticsearch/common.rb:105:in submit'", "/usr/share/logstash/vendor/bundle/jruby/1.9/gems/logstash-output-elasticsearch-4.1.1-java/lib/logstash/outputs/elasticsearch/common.rb:72:inretrying_submit'", "/usr/share/logstash/vendor/bundle/jruby/1.9/gems/logstash-output-elasticsearch-4.1.1-java/lib/logstash/outputs/elasticsearch/common.rb:23:in multi_receive'", "org/jruby/RubyArray.java:1653:ineach_slice'", "/usr/share/logstash/vendor/bundle/jruby/1.9/gems/logstash-output-elasticsearch-4.1.1-java/lib/logstash/outputs/elasticsearch/common.rb:22:in multi_receive'", "/usr/share/logstash/logstash-core/lib/logstash/output_delegator.rb:136:inthreadsafe_multi_receive'", "/usr/share/logstash/logstash-core/lib/logstash/output_
Run Code Online (Sandbox Code Playgroud)

Bra*_*rad 1

我想我可能已经明白了。我正在使用 Logstash 5.1.1-alpine docker 镜像。据我所知,它附带了elasticsearch-output插件v4.5.0,它似乎有这个错误。强制将该插件更新到最新版本(6.2)已修复此问题。

现在我的 Dockerfile

FROM logstash:5.1.1-alpine

RUN $LOGSTASH_PATH/logstash-plugin install --version 6.2.0 logstash-output-elasticsearch
Run Code Online (Sandbox Code Playgroud)

使用更新的插件后,我不再看到此错误。