KafkaListner无法解析主题名称

时间:2020-02-23 17:23:04

标签: spring apache-kafka spring-kafka

我正在研究 + spring和java api。面对非常烦人的问题。我已经使用kafka主题模式方法来监听多个客户端的事件。 以下是kafka使用者的代码,其中主题名称来自配置文件,后缀具有硬代码值。

${${service}.topic} value - test-env.demo.*.v1 后缀值为-.cqrs.customer

@KafkaListener(
            topicPattern = "${${service}.topic}" + Constants.suffix,
            groupId = "test",
            id = "test")

因此将为客户abc解析的最终主题名称。

test-env.demo.abc.v1.cqrs.customer

,对于客户xyz将为

test-env.demo.xyz.v1.cqrs.customer

,但是当生产者针对以下任何主题发出事件时。消费者什么也没听。

有人可以帮我这个忙吗?

谢谢

1 个答案:

答案 0 :(得分:0)

您可以在应用程序日志中grep短语“分配的分区”,此行将包含有关将哪些分区分配给您的应用程序的信息。如果成功,应该类似于:

partitions assigned: [test-env.demo.abc.v1.cqrs.customer-0], 

如果分配的分区为空

partitions assigned: []

“测试”组中可能已经有其他一些消费者实例,并且正在处理它们。在这种情况下,请尝试更改组的名称。