如何查看kafka消息
Posted
技术标签:
【中文标题】如何查看kafka消息【英文标题】:How to view kafka message 【发布时间】:2017-10-29 13:24:06 【问题描述】:有什么方法可以查看给定主题发送到 kafka 的消息内容?如果可能的话,说一些类似查看此主题的最后 5 条消息之类的话。
【问题讨论】:
KaDeck 是一个免费的“Kafka 主题/消息浏览器”,它作为桌面应用程序在 Mac、Linux 和 Windows 上运行。它还支持 Avro(Schema Reg + Embedded)、Json、String 等……如果您需要 Web 服务,则需要购买企业版。 【参考方案1】:您可以使用控制台消费者查看某个主题产生的消息:
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
【讨论】:
这个命令还需要 --zookeeper details ,我添加了 - ./kafka-console-consumer.sh --zookeeper localhost:2181 --bootstrap-server localhost:9092 --topic test。但现在我得到 - kafka.common.ConsumerRebalanceFailedException: console-consumer-18088_sp-1496052524018-50bb9338 can't rebalance after 4 retries at kafka.consumer.ZookeeperConsumerConnector$ZKRebalancerListener.syncedRebalance(ZookeeperConsumerConnector.scala:660) at 这是一个单独的问题。看看这个:***.com/questions/22563401/… 使用 bin/kafka-console-consumer.sh --new-consumer --bootstrap-server localhost:9092 --topic test --from-beginningbootstrap-server
vs. zookeeper
是kafka版本的问题。
WARN [Consumer clientId=consumer-1, groupId=console-consumer-22072] 无法建立到节点 -1 (localhost/127.0.0.1:9092) 的连接。经纪人可能不可用。 (org.apache.kafka.clients.NetworkClient)【参考方案2】:
我在一家拥有数百名开发人员的公司工作,他们显然需要定期检查 Kafka 消息。员工来来去去,因此我们希望避免为每个新员工设置(专用 SASL 凭据、证书、ACL...)。
我们的平台团队部署了 Kowl (https://github.com/cloudhut/kowl),这样每个人都可以访问它,而无需进行常规设置。我们在使用 docker-compose 文件进行本地开发时也会用到它。
【讨论】:
【参考方案3】:在您的管理员运行 kafka 的服务器上,通过命令 find . -name kafka-console-consumer.sh
找到 kafka-console-consumer.sh,然后转到该目录并运行以从您的主题中读取消息
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning --max-messages 10
请注意,在这种情况下,主题中可能有很多消息,我使用 --max-messages 键
【讨论】:
【参考方案4】:使用Kafka提供的Kafka消费者:
bin/kafka-console-consumer.sh --bootstrap-server BROKERS --topic TOPIC_NAME
它将在收到消息时显示消息。如果你想从头开始添加--from-beginning
。
【讨论】:
【参考方案5】:您可以尝试Kafka Magic - 它是免费的,您可以在 javascript 中编写引用消息属性和元数据的复杂查询。也适用于 Avro 序列化
【讨论】:
就像一个魅力......!!!在本地 - 集群名称 = localhost 引导 URL = localhost:9092 阅读主题时是否支持avro模式?虽然我输入了 schema-registry URL,并且连接验证成功,但在过滤主题时禁用了 avro 支持的复选框。 当我试图运行 ./kafkamagic 时。 mac,就是说,“KafkaMagic”无法打开,因为无法验证开发者。请有任何建议【参考方案6】:如果你是从 windows 文件夹做的,我的意思是如果你使用的是 windows 机器上的 kafka
kafka-console-consumer.bat --bootstrap-server localhost:9092 --<topic-name> test --from-beginning
【讨论】:
【参考方案7】:您可以查看AKHQ。我们在Nussknacker 中使用它。您可以通过我们的Demo page实时查看。
【讨论】:
【参考方案8】:如果您想知道为什么原始答案不起作用。好吧,可能是您不在主目录中。试试这个:
$KAFKA_HOME/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
【讨论】:
【参考方案9】:旧版本包含kafka-simple-consumer-shell.sh
(https://kafka.apache.org/downloads#1.1.1),这很方便,因为我们不需要cltr+c
来退出。
例如
kafka-simple-consumer-shell.sh --broker-list $BROKERIP:$BROKERPORT --topic $TOPIC1 --property print.key=true --property key.separator=":" --no-wait-at-logend
【讨论】:
【参考方案10】:您可以尝试kafdrop 在 Web UI 中查看消息,而不是使用 shell 命令。
【讨论】:
以上是关于如何查看kafka消息的主要内容,如果未能解决你的问题,请参考以下文章