You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ELK部署中Logstash遇java.net.SocketException: Connection Reset问题求助

排查Logstash TCP连接重置(java.net.SocketException: Connection reset)问题

以下是按优先级排序的排查步骤:

1. 网络连通性验证

  • 在Logstash服务器和客户端服务器分别执行端口连通测试:
    • Logstash服务器侧:nc -zv 172.16.12.208 5000
    • 客户端侧:nc -zv <Logstash服务器IP> 5000
      确认双向无防火墙、安全组、iptables规则拦截5000端口的TCP流量。
  • 检查Logstash端口监听状态:ss -tulpn | grep 5000,确认进程确实在监听5000端口,且绑定地址为0.0.0.0或客户端可访问的IP(而非仅127.0.0.1)。

2. 数据格式与Codec匹配检查

你的TCP输入配置指定了codec => "json",要求客户端发送的每条日志必须是合法JSON格式且以换行符分隔。若数据格式不匹配,Logstash会直接断开连接:

  • 临时修改配置切换为line codec测试:
input {
  tcp {
    port => 5000
    codec => "line"
  }
}

若切换后连接正常,说明问题出在客户端发送的数据不符合JSON格式要求。

  • 用nc工具模拟合法JSON数据发送:echo '{"test": "sample_log"}' | nc <Logstash服务器IP> 5000,观察Logstash日志是否仍报错,同时确认数据是否能被正常接收。

3. Logstash进程资源与权限排查

  • 确认Logstash进程有权限监听5000端口(高位端口无需root权限,但若存在特殊权限限制需排查)。
  • 检查服务器CPU、内存、磁盘IO状态,排除资源耗尽导致进程无法处理连接的情况。
  • 查看Logstash完整日志,排查是否存在 codec 初始化失败、线程池耗尽等关联报错。

4. 客户端配置验证

  • 核对客户端应用的日志发送配置:目标IP、端口、协议(TCP)、数据格式(JSON)是否正确,是否开启了不合理的超时或重试机制。
  • 查看客户端应用本地日志,排查是否存在连接超时、发送被拒绝等本地报错信息。

内容的提问来源于stack exchange,提问作者maryem neyli

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 03:09:53