取得消費者 group.id
當在多個容器中執行相同的監聽器程式碼時,能夠判斷記錄來自哪個容器 (由其 group.id
消費者屬性識別) 可能很有用。
您可以在監聽器執行緒上呼叫 KafkaUtils.getConsumerGroupId()
來執行此操作。或者,您可以在方法參數中存取群組 ID。
@KafkaListener(id = "id", topicPattern = "someTopic")
public void listener(@Payload String payload, @Header(KafkaHeaders.GROUP_ID) String groupId) {
...
}
這在接收 List<?> 記錄的記錄監聽器和批次監聽器中可用。在接收 ConsumerRecords<?, ?> 引數的批次監聽器中不可用。在這種情況下,請使用 KafkaUtils 機制。 |