logstash未通过SocketAppender与log4j一起工作

logstash未通过SocketAppender与log4j一起工作,logstash,Logstash,我一直在尝试(但失败)让logstash与log4j SocketAppender一起工作 这是我的log4j.properties: log4j.appender.tcp=org.apache.log4j.net.SocketAppender log4j.appender.tcp.Port=4560 log4j.appender.tcp.RemoteHost=localhost log4j.appender.tcp.ReconnectionDelay=10000 log4j.appender.

我一直在尝试(但失败)让logstash与log4j SocketAppender一起工作

这是我的log4j.properties:

log4j.appender.tcp=org.apache.log4j.net.SocketAppender
log4j.appender.tcp.Port=4560
log4j.appender.tcp.RemoteHost=localhost
log4j.appender.tcp.ReconnectionDelay=10000
log4j.appender.tcp.Application=playground
logstash.conf

input {
  log4j {
  }
}
output {
  stdout {}
}
我已将logstash logging level设置为TRACE,并向其发送了一条日志消息。之后,我在logstash的控制台日志中发现了以下行:

11:44:35.778 [Ruby-0-Thread-21: c:/_work/issues/log4j_socketappender/logstash-5.0.1/vendor/bundle/jruby/1.9/gems/logstash-input-log4j-3.0.3-java/lib/logstash/inputs/log4j.rb:155] DEBUG logstash.inputs.log4j - Accepted connection {:client=>"127.0.0.1:61823", :server=>"0.0.0.0:4560"}
11:44:35.795 [Ruby-0-Thread-21: c:/_work/issues/log4j_socketappender/logstash-5.0.1/vendor/bundle/jruby/1.9/gems/logstash-input-log4j-3.0.3-java/lib/logstash/inputs/log4j.rb:155] DEBUG logstash.inputs.log4j - Closing connection {:client=>"127.0.0.1:61823", :exception=>#<IOError: org.apache.log4j.spi.LoggingEvent; class invalid for deserialization>}
11:44:35.778[Ruby-0-Thread-21:c:/\u-work/issues/log4j\u-socketappender/logstash-5.0.1/vendor/bundle/jruby/1.9/gems/logstash-input-log4j-3.0.3-java/lib/logstash/inputs/log4j.rb:155]调试logstash.inputs.log4j-接受的连接{:client=>“127.0.0.1:61823”,:server=>“0.0.0:4560:4560”}
11:44:35.795[Ruby-0-Thread-21:c:/(u work/issues/log4j)socketappender/logstash-5.0.1/vendor/bundle/jruby/1.9/gems/logstash-input-log4j-3.0.3-java/lib/logstash/inputs/log4j.rb:155]调试logstash.inputs.log4j-关闭连接{:client=>“127.0.0.1:61823”,:exception=>

非常感谢您的帮助。

这是一个错误。有一个解决办法:

在logstash安装目录中找到文件
logstash core/lib/jars.rb
,注释掉以下行:

require_jar('org.apache.logging.log4j', 'log4j-1.2-api', '2.6.2')

这里讨论:

这是一个bug。有一个解决办法:

在logstash安装目录中找到文件
logstash core/lib/jars.rb
,注释掉以下行:

require_jar('org.apache.logging.log4j', 'log4j-1.2-api', '2.6.2')
在此讨论: