【发布时间】:2020-02-18 07:59:40
【问题描述】:
我必须使用 tcp 连接测试 logback + logstash 的一些功能。我已经下载了 logstash 应用程序。像这样配置:
input {
tcp {
port => "4560"
codec => json_lines
}
} output {
stdout { codec => rubydebug }
}
从
开始.\bin\logstash.bat -f .\config\logstash-tcp.conf
以消息开头:
[2020-02-18T10:33:23,910][INFO ][logstash.agent ] Successfully started Logstash API endpoint {:port=>9600}
现在,我的 ide 中有一个 Java 应用程序,它应该通过 tcp 连接将带有 logback 的信息记录到本地 lockstash 中。我有这样配置的 logback.xml 文件:
<appender name="LOGSTASH_TCP" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>127.0.0.1:4560</destination>
<writeBufferSize>65536</writeBufferSize>
<ringBufferSize>65536</ringBufferSize>
<reconnectionDelay>5 second</reconnectionDelay>
<droppedWarnFrequency>100</droppedWarnFrequency>
<encoder class="net.logstash.logback.encoder.LogstashEncoder"/>
</appender>
<root level="debug">
<appender-ref ref="STDOUT" />
<appender-ref ref="LOGSTASH_TCP"/>
</root>
现在,当我尝试记录某些东西时,在 logstash 控制台中我看到了该消息:
[2020-02-18T10:40:23,373][ERROR][logstash.inputs.tcp ][main] Error in Netty pipeline: java.io.IOException: An existing connection was forcibly closed by the remote host
如果有人能帮助解决这个问题,我将不胜感激。
【问题讨论】:
标签: java logging logstash logback