获取消费者 group.id
group.id
在多个容器中运行相同的监听器代码时,能够确定记录来自哪个容器(通过其 group.id
消费者属性识别)可能是有用的。
您可以在监听线程上调用 KafkaUtils.getConsumerGroupId()
来实现这一点。或者,您可以在方法参数中访问组 ID。
@KafkaListener(id = "id", topicPattern = "someTopic")
public void listener(@Payload String payload, @Header(KafkaHeaders.GROUP_ID) String groupId) {
...
}
important
这在接收 List<?>
记录的记录监听器和批处理监听器中可用。它在接收 ConsumerRecords<?, ?>
参数的批处理监听器中不可用。在这种情况下,请使用 KafkaUtils
机制。