客户端健康检查:如果代理关闭,检查消费者/生产者

epggiuax  于 2021-06-04  发布在  Kafka
关注(0)|答案(1)|浏览(305)

我需要实现healthcheck,作为其中的一部分,我必须确定生产者是否能够发布消息,消费者是否能够发布消息,为此,我必须检查到集群的连接是否正常工作,这可以使用“connection\u count”度量进行检查,但这并不能提供真实的情况,特别是对于将绑定到特定代理的使用者,该使用者的分区在哪个代理上。
producer的情况更为棘手,因为producer可能会将消息发布给任何代理,这些代理持有producer正在发布的主题的分区。
简而言之,我如何在生产者/消费者sude上找到相关经纪人的健康状况。

rryofs0p

rryofs0p1#

最后,我把这个问题分成几个检查。
你能联系到经纪人吗? AdminClient.describeCluster 为这个工作
你能描述一下你正在使用的主题吗? AdminClient.describeTopic 你能做到吗
这些主题的isr列表是否高于 min.in.sync.replicas ? 从(2)推断数据
在producer端,您可以公开缓冲区大小周围的jmx数据。。。如果缓冲区没有定期刷新,那么它就不正常。
对于消费者来说,看看在什么情况下会发生再平衡(比如两次投票之间的处理时间过长),然后你就可以快速确定对他们来说“不健康”意味着什么。
我写的一些概念
dropwizard kafka(还有生产者和消费者检查)
雷莫拉
我想Spring也有类似的东西

相关问题