簡體   English   中英

Logstash S3輸入NoMethodError

[英]Logstash S3 Input NoMethodError

我是Logstash的新手,無法正常使用s3輸入。 如下所示,我一直Error: undefined method common_prefixes for {}:HashError: undefined method common_prefixes for {}:Hash問題的Error: undefined method common_prefixes for {}:Hash ,我不知道為什么。

我正在使用來自網站1.4.2的最新Logstash。 我下載,解壓縮,使用下面的配置運行並得到以下列出的錯誤。

我缺少依賴嗎? 看起來Logstash捆綁了我需要的所有東西,包括aws-sdk。

我的配置如下所示:

input {
  s3 {
    bucket => "mybucket/withadirectory/"
    credentials => ["id", "key" ]
    codec => "json"
  }
}

output {
  stdout { codec => rubydebug }
}

鏟斗內容

s3cmd ls s3://mybucket/withdirectory/
2014-11-24 21:43         0   s3://mybucket/withdirectory/
2014-12-08 07:45    729126   s3://mybucket/withdirectory/SampleFileForTesting.gz

錯誤

Pipeline started {:level=>:info, :file=>"logstash/pipeline.rb", :line=>"78"}
A plugin had an unrecoverable error. Will restart this plugin.
Plugin: <LogStash::Inputs::S3 bucket=>"mybucket/withdirectory/", credentials=>["xyz", "zyx"], region_endpoint=>"us-west-2">
  Error: undefined method `common_prefixes' for {}:Hash
  Exception: NoMethodError
  Stack: /home/test/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/aws-sdk-1.35.0/lib/aws/core/data.rb:101:in `method_missing'
/home/test/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/aws-sdk-1.35.0/lib/aws/core/data.rb:121:in `method_missing'
/home/test/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/aws-sdk-1.35.0/lib/aws/core/response.rb:184:in `method_missing'
/home/test/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/aws-sdk-1.35.0/lib/aws/s3/prefix_and_delimiter_collection.rb:31:in `each_member_in_page'
/home/test/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/aws-sdk-1.35.0/lib/aws/s3/object_collection.rb:288:in `each_member_in_page'
/home/test/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/aws-sdk-1.35.0/lib/aws/s3/paginated_collection.rb:31:in `_each_item'
/home/test/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/aws-sdk-1.35.0/lib/aws/core/collection/with_limit_and_next_token.rb:54:in `_each_batch'
/home/test/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/aws-sdk-1.35.0/lib/aws/core/collection.rb:80:in `each_batch'
/home/test/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/aws-sdk-1.35.0/lib/aws/core/collection.rb:47:in `each'
/home/test/logstash-1.4.2/vendor/bundle/jruby/1.9/gems/aws-sdk-1.35.0/lib/aws/s3/object_collection.rb:282:in `each'
/home/test/logstash-1.4.2/lib/logstash/inputs/s3.rb:168:in `list_new'
/home/test/logstash-1.4.2/lib/logstash/inputs/s3.rb:150:in `process_new'
/home/test/logstash-1.4.2/lib/logstash/inputs/s3.rb:137:in `run'
org/jruby/RubyKernel.java:1521:in `loop'
/home/test/logstash-1.4.2/lib/logstash/inputs/s3.rb:136:in `run'
/home/test/logstash-1.4.2/lib/logstash/pipeline.rb:163:in `inputworker'
/home/test/logstash-1.4.2/lib/logstash/pipeline.rb:157:in `start_input' {:level=>:error, :file=>"logstash/pipeline.rb", :line=>"168"}

我在輸出插件中有類似的問題,s3插件中存在一個json格式的錯誤。 https://logstash.jira.com/browse/LOGSTASH-1643

我改為1.5.0,一切正常。 不確定輸入插件是否存在相同的問題,您可以將編解碼器更改為Plain或切換到1.5.0進行嘗試。

祝你好運

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM