当我使用kafka 0.9.0.1
运行以下命令时,我会收到这些警告[1]。你能告诉我我的题目出了什么问题吗?(我正在和运行在ec2的kafka经纪人交谈)
./kafka-console-consumer.sh --new-consumer --bootstrap-server kafka.xx.com:9092 --topic MY_TOPIC?
[1]
[2016-04-06 10:57:45,839] WARN Error while fetching metadata with correlation id 1 : {MY_TOPIC?=INVALID_TOPIC_EXCEPTION} (org.apache.kafka.clients.NetworkClient)
[2016-04-06 10:57:46,066] WARN Error while fetching metadata with correlation id 3 : {MY_TOPIC?=INVALID_TOPIC_EXCEPTION} (org.apache.kafka.clients.NetworkClient)
[2016-04-06 10:57:46,188] WARN Error while fetching metadata with correlation id 5 : {MY_TOPIC?=INVALID_TOPIC_EXCEPTION} (org.apache.kafka.clients.NetworkClient)
[2016-04-06 10:57:46,311] WARN Error while fetching metadata with correlation id 7 : {MY_TOPIC?=INVALID_TOPIC_EXCEPTION} (org.apache.kafka.clients.NetworkClient)
您的主题名称无效,因为它包含字符"?"这不是用于主题名称的合法字符。
我得到了同样的错误。在我的例子中,问题是我的代码中逗号分隔的主题之间的空间:
@source(type='kafka',
topic.list="p1, p2, p3",
partition.no.list='0',
threading.option='single.thread',
group.id="group",
bootstrap.servers='kafka:9092',
@map(type='json')
)
最终找到解决方案:
@source(type='kafka',
topic.list="p1,p2,p3",
partition.no.list='0',
threading.option='single.thread',
group.id="group",
bootstrap.servers='kafka:9092',
@map(type='json')
)
当我们的生产者无法生产到相应的地址时,就会发生这种情况,请在/kafka/config/server.properties中检查广告侦听器的值,如果它发表评论,还有其他问题。但如果不是,请将您的ip地址放在localhost位置,然后重新启动zookeeper和kafka试着启动控制台生产商,希望它能工作。
万一有人遇到与逗号"有关的问题"和logstash输出到kafka或计算的主题名称:
在logstash输出到kafka的topic_id中,我们试图创建topic_id,并添加我们在过滤器中计算的变量。
问题是该字段已经存在于源文档中,并且我们后来将其添加为";再次";在logstash过滤器中,将字符串字段转换为散列(数组/列表)。
因此,正如我们在logstash输出中使用的那样
topic_id => ["topicName_%{field}"]
我们最终得到:
topic_id : "topicName_fieldItem1,FieldItem2"
导致logstash日志异常的原因
[WARN ][org.apache.kafka.clients.NetworkClient] [Producer clientId=logstash] Error while fetching metadata with correlation id 3605264 : {topicName_fieldItem1,FieldItem2=INVALID_TOPIC_EXCEPTION}