【问题标题】:WARN Error while fetching metadata with correlation id 1 : {MY_TOPIC?=INVALID_TOPIC_EXCEPTION} (org.apache.kafka.clients.NetworkClient)WARN 获取相关 ID 为 1 的元数据时出错:{MY_TOPIC?=INVALID_TOPIC_EXCEPTION} (org.apache.kafka.clients.NetworkClient)
【发布时间】:2016-07-26 04:31:20
【问题描述】:

当我使用 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)

【问题讨论】:

    标签: jms apache-kafka kafka-consumer-api jms-topic kafka-producer-api


    【解决方案1】:

    您的主题名称无效,因为它包含字符“?”这不是主题名称的合法字符。

    【讨论】:

    • 现在我尝试不使用“?”它没有返回任何消息。这意味着它卡住了。但是当我使用较旧的消费者工具时,它会消耗消息。你能告诉我原因吗?
    • 我尝试过的老年消费者像 ./kafka-console-consumer.sh --zookeeper zookeper.xx.com:2181 --topic MY_TOPIC --from-beginning
    • 在 new-consumer 命令的末尾添加 --from-beginning 标志。它应该可以工作。
    • 不,它不工作..它卡住了..请检查 apache kafka 用户列表中的以下线程 //连接本地服务器和远程服务器是否有任何行为变化?//和/消费者线程正在等待永远,不返回任何对象//
    • 好的..所以回到我原来的问题。现在 poll() 永远卡住了,没有为我的新消费者提供任何例外。但我的 ec2 实例设置看起来不错
    【解决方案2】:

    我遇到了同样的错误。在我的情况下,问题是我的代码中逗号分隔的主题之间的空格:

    @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')
    )
    

    【讨论】:

      【解决方案3】:

      当我们的生产者无法生产到相应的地址时会发生这种情况,请检查 /kafka/config/server.properties 广告侦听器的值, 如果它被注释掉,还有其他问题。 但如果不是,请将您的 ip 地址替换为 localhost,然后重新启动 zookeeper 和 kafka 尝试启动控制台生产者,希望它会起作用。

      【讨论】:

        【解决方案4】:

        以防万一有人遇到与逗号“、”和logstash 输出到kafka 或计算出的主题名称相关的问题:

        在输出到 kafka 的 logstash 的 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}
        

        【讨论】:

          猜你喜欢
          • 2019-10-06
          • 2020-12-27
          • 2020-01-05
          • 1970-01-01
          • 2016-10-20
          • 2020-05-15
          • 1970-01-01
          • 2021-10-09
          • 2021-11-21
          相关资源
          最近更新 更多