emqx 连接经常断开,通过捉包分析到有断开

环境

  • EMQX 版本:5.0.17
  • 操作系统版本:centos

大部分客户端连接上EMQX Broker,但很多时候会自动断开连接,通过捉包发现以下截图。请问EMQX主动断开还是客户端主动断开呢?

从EMQX的日志看是客户端的一些行为触发了它在disconnect状态,马上就可以给客户端发disconnect指令的情况下。突然又收到客户端直接断开连接的ssl_closed,所以打印了这个日志。
建议使用dashboard上的trace功能查看客户端从上线到下线的全部数据,看看是否有异常

track日志 看到有断开?现在不确定是EMQX的问题还是客户端的问题。我用MQTTX工具连接后在订阅,过一段时间也会自动断开。

2248行有具体的错误提示,takeover,这个是被相同的clientid的客户端挤下线了。

2248是由于重连的时候挤下线,问题是2230的那个断开是什么原因断开呢?

2处是同一个客户端,IP+端口都是172:60863,clientid也相同

你好,主要是2230先发生断开后,再会出现连锁反应,主要是2230行的问题不像是挤下线的断开,如果没有2230断开,估计就不会发生2248挤下线的断开,所以想了解一下2230的断开是由于什么造成的呢?

日志里表明2230和2248是同一条tcp同一个客户端。
他们应该都是一个原因,就是被挤下线了。
不是2230下线,然后2248再下线。

你好我这里也有相同的问题,按图里来看是客户端keepalive_timeout导致客户端重连的吗

keepalive_timeout是客户端的心跳间隔设置有问题,
和这个问题下的挤下线没有任何关系。

我们这个日志是2230先发生异常断开后,然后重连IP与端口变成 172:9164 ,然后再把172:60863 踢下线这个是没问题,现在主要问题是2230 是收到遗嘱断开,目前不知道2230这个断开的原因?因为踢下线是我们连接异常才会使用拿的连接踢的,但踢之前的连接异常的问题没法找到是什么原因。