Logstash - GELF 输出错误

Logstash - GELF output error

我在 Windows 7 PC 上的 VirtualBox 中安装了 Graylog v2.1.1 作为虚拟设备。

我正在尝试使用 logstash v5.0.0logstash-output-gelf-3.1.1 插件读取一个简单的日志文件并将其转发到 Graylog,如下所述:.

我设置了以下 logstash.conf 输出:

input { 
  file {...}
}

output {
  gelf {
    host => "199.99.99.179"
    port => 12203
  }
}

但是在 运行 logstash -f logstash.conf 之后我得到以下错误:

[2016-10-28T14:52:17,756][INFO ][logstash.pipeline        ] Pipeline main started
[2016-10-28T14:52:17,817][INFO ][logstash.agent           ] Successfully started Logstash API endpoint {:port=>9600}
[2016-10-28T14:52:18,594][FATAL][logstash.runner          ] An unexpected error occurred! {:error=>#<NameError: no method 'debug' for arguments (org.jruby.RubyArray,org.jruby.RubyHash) on Java::OrgApacheLoggingLog4jCore::Logger
  available overloads:
    (org.apache.logging.log4j.Marker,java.lang.String,java.lang.Object[])
    (org.apache.logging.log4j.Marker,java.lang.String,org.apache.logging.log4j.util.Supplier[])
    (java.lang.String,org.apache.logging.log4j.util.Supplier[])
    (java.lang.String,java.lang.Object[])>, :backtrace=>["C:/SDKs/logstash-5.0.0/logstash-core/lib/logstash/logging/logger.rb:41:in `debug'", "C:/SDKs/logstash-5.0.0/vendor/bundle/jruby/1.9/gems/logstash-output-gelf-3.1.1/lib/logstash/outputs/gelf.rb
:190:in `receive'", "C:/SDKs/logstash-5.0.0/logstash-core/lib/logstash/outputs/base.rb:92:in `multi_receive'", "org/jruby/RubyArray.java:1613:in `each'", "C:/SDKs/logstash-5.0.0/logstash-core/lib/logstash/outputs/base.rb:92:in `multi_receive'", "C:/S
DKs/logstash-5.0.0/logstash-core/lib/logstash/output_delegator_strategies/legacy.rb:19:in `multi_receive'", "C:/SDKs/logstash-5.0.0/logstash-core/lib/logstash/output_delegator.rb:42:in `multi_receive'", "C:/SDKs/logstash-5.0.0/logstash-core/lib/logst
ash/pipeline.rb:297:in `output_batch'", "org/jruby/RubyHash.java:1342:in `each'", "C:/SDKs/logstash-5.0.0/logstash-core/lib/logstash/pipeline.rb:296:in `output_batch'", "C:/SDKs/logstash-5.0.0/logstash-core/lib/logstash/pipeline.rb:252:in `worker_loo
p'", "C:/SDKs/logstash-5.0.0/logstash-core/lib/logstash/pipeline.rb:225:in `start_workers'"]}

更新:

这似乎是由 logstashlogstash-output-gelf 之间的版本不匹配引起的,因为相同的配置在 logstash-2.4.0 上运行良好。 也许输出插件需要为 5.0.0 更新。