是否可以获取作为给定消费者组的成员连接到经纪人的消费者(IP)列表?
我知道kafka-consumer-group.sh命令会对所有当前连接/活动的使用者执行此操作。 但是我很感兴趣是否有一个临时用户,例如5分钟前,它确实消耗了主题中的某些消息。
我还尝试增加授权者的日志以进行调试。但是结果是在几个小时内增加了数百万条日志。
谢谢,约臣
答案 0 :(得分:0)
尝试使用带有listConsumerGroups的AdminClient获取使用者列表
/*List the consumer groups available in the cluster with the default options.*/
public ListConsumerGroupsResult listConsumerGroups() {
return listConsumerGroups(new ListConsumerGroupsOptions());
}
在下面的样本中获取消费者列表
import org.apache.kafka.clients.admin.ListConsumerGroupOffsetsResult;
import org.apache.kafka.clients.consumer.KafkaConsumer;
iomport org.apache.kafka.clients.admin.AdminClient;
AdminClient client = AdminClient.create(props);
//.all(): Returns a future that yields either an exception, or the full set of consumer group listings.
List<String> listConsumer=client.listConsumerGroups().all().get().stream().
map(f -> f.groupId()).collect(Collectors.toList());