在 librdkafka 中识别组长
Identify group leader in librdkafka
有没有办法在 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)
仅当 LeaderId 与 MemberId 相同时才会包含“(me)
”部分。
有没有办法在 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)
仅当 LeaderId 与 MemberId 相同时才会包含“(me)
”部分。