请问开源版丢失的消息能怎么查看?

生产环境出现消息丢失,请问怎么查看丢了什么消息 ?
1688206549231

可以在emqx的日志中看看,对应时间段有没有异常的日志。

全局搜索了下代码,目前只有三种丢弃的情况

  • no_subscriber ,没有日志,只有计数
  • packet_identifier_inuse, warning日志
  • receive_maximum_exceeded, wanring 日志

他们表示:

  • 前者 no_subscriber 则是 EMQX 在分发消息时,发现没有任何人订阅该主题,所以丢弃的该消息,这种情况还挺常见的。
  • 后两者的消息丢弃,都是在 EMQX 处理来自客户端的 QoS2 消息非法,或者超过限制的出现了2而丢弃的。

应该还有一种情况,超过消息队列的容量,最先进队列的消息也要被丢弃吧