有没有办法识别 librdkafka 中的组长?
由于无法通过自定义分区策略,因此我有一些技巧可以达到目的。如果不是我应该退出,我的特定消费者必须是组长。
或者有没有办法确保没有其他消费者使用当前的消费者组 id 运行?
有没有办法识别 librdkafka 中的组长?
由于无法通过自定义分区策略,因此我有一些技巧可以达到目的。如果不是我应该退出,我的特定消费者必须是组长。
或者有没有办法确保没有其他消费者使用当前的消费者组 id 运行?
目前,您可以识别消费者组的领导者的唯一方法是启用cgrp
调试上下文(将debug
配置属性设置为cgrp
),然后捕获日志(使用log_cb
或事件 API)并匹配此日志行(在未来版本中可能会更改) :
1591771297.737 RDKAFKA-7-JOINGROUP: rdkafka#consumer-1: [thrd:main]: JoinGroup response: GenerationId 1, Protocol range, LeaderId rdkafka-b5751775-49f4-4ac8-a912-f5800f5bffbe (me), my MemberId rdkafka-b5751775-49f4-4ac8-a912-f5800f5bffbe, 1 members in group: (no error)
(me)
只有 LeaderId 与 MemberId 相同时才会包含“ ”部分。