Kafka 可视化工具 Offset Explorer 怎么用?看完就会
用命令行翻 Kafka 的消息,翻到第三个 Topic 就想砸键盘。
Offset Explorer 就是来解决这个的。
它是一个图形界面工具,连上集群之后,Broker、Topic、分区、消费者组、消息内容全都摆在眼前,鼠标点点就能看。
下面把下载、连接、看消息、建 Topic 这一整套流程讲清楚。
Offset Explorer 到底是个啥工具
Offset Explorer 是管理 Apache Kafka 集群的桌面 GUI 应用。
它的前身叫 Kafka Tool,后来改了名,官网也从 kafkatool.com 迁到了 offsetexplorer.com(老域名目前还能跳转)。
能干的事不少:
- 一眼看完所有 Broker、Topic、消费者组
- 查看分区里的消息内容,也能手动塞新消息进去
- 监控消费者组的 Offset 和 Lag(堆积量)
- 自动美化 JSON、XML、Avro 格式的消息
- 创建、删除 Topic
- 把消息导出保存到本地
截至 2026 年,最新是 3.x 系列(3.1)。
版本和 Kafka 的对应关系得留意:Kafka 0.11 以下用 2.x 工具,0.11 及以上直接上 3.x。
新手装最新版就行,不用纠结。
许可这块说一句:个人使用免费,商业、教育、非营利等场景需要购买授权,下载后有 30 天评估期。
支持 Windows、Linux、macOS 三个平台。
下载与安装
进官网下载页 offsetexplorer.com/download.html,选对应系统的安装包。
Windows 和 macOS 的安装包自带了 JRE,不用单独装 Java,下载完双击一路下一步即可。
Linux 版是例外,它不打包 JRE,得自己先装好 Java 运行环境。
装完桌面会有快捷方式,打开就是主界面。
连接 Kafka 集群(最关键的一步)
第一次打开是空的,得先建连接。
点菜单 File → Add New Connection,或者直接点界面上的加号。
弹窗里有几个标签页,逐个说。
Properties 标签页
Cluster name:随便起个名,比如local-dev或prod-集群Kafka Cluster Version:选你集群对应的 Kafka 版本Zookeeper Host / Port:旧版集群填 ZooKeeper 地址,比如localhost:2181
Advanced 标签页
Bootstrap servers:填 Broker 地址,格式host1:9092,host2:9092
这里有个变化值得说。
新版 Kafka 慢慢不依赖 ZooKeeper 了,3.x 的 Offset Explorer 直接配 Bootstrap servers 就能连,不一定非要填 ZooKeeper。
Security 标签页(带认证的集群才用)
如果集群开了认证,在这里配:
Type:选SASL Plaintext、SASL SSL或SSL- SSL 要填 keystore、truststore 的路径和密码
- SASL 要填 JAAS 认证信息,也就是用户名和密码
填完点 Test(测试连接),绿灯通过再点 Add 保存。
测试这一步千万别跳,不然存了个连不上的连接,后面排查更麻烦。
看不懂消息内容?先改这个设置
这是新手最高频的坑。
刚连上点开消息,Key 和 Value 显示一坨十六进制或者乱码,根本看不懂。
原因是 Offset Explorer 默认把消息当字节数组(Byte Array)来显示。
解决办法:在左侧的连接(Cluster)上右键 → Properties → 找到 Content Types 标签页。
分别把 Key 和 Value 的格式改掉:
Key:一般业务里 Key 是字符串,选StringMessage(也就是 Value):纯文本选String,JSON 数据选Json
改成 Json 之后,界面会自动把消息格式化成带缩进的样子,比命令行里挤成一行的 JSON 舒服太多。
也可以在 Data 标签页顶部临时切一次性的解码格式,不用每次改配置。
记住这条,能省下一堆"为什么消息全是乱码"的搜索时间。
查看 Topic 和消息
连上之后左侧是树形结构,展开 Topics 能看到所有主题。
主题多的话,上面有搜索框,直接打字过滤。
点中某个 Topic,右侧切到 Data 标签页,点查询/刷新按钮就能拉消息。
列表里能看到 Offset、Key、Value、Partition、时间戳这些列。
拉消息时注意 Retrieve 这个选项:
Oldest:从最旧的消息开始读Newest:从最新的消息往回读
还能设一次读多少条,数据量大的时候别一次拉太多,容易卡。
补一句关于数据时效的事。
Kafka 的消息不是永久存的,一般保留 3 到 7 天就被清掉了。
想查更久以前的数据,多半已经没了,这不是工具的问题,是 Kafka 的保留策略决定的。
创建 Topic 与塞测试消息
建 Topic 很直接。
在左侧 Topics 节点上右键 → Create Topic。
填三个东西:Topic 名称、分区数(Partitions)、副本数(Replication Factor)。
分区数和副本数按实际需求来,本地测试副本数填 1 就够。
想往 Topic 里塞测试数据,选中 Topic 进 Data 标签页,点工具栏的加号,填好 Key 和 Value 再 Add 就发出去了。
也有人习惯用命令行发:
kafka-console-producer.sh --broker-list localhost:9092 --topic your_topic_name回车后直接敲消息内容,一行一条。
两种方式都行,图形界面更适合临时造几条数据验证。
查看消费者组和 Lag
展开左侧的 Consumers 节点,能看到所有消费者组。
点进去能看每个组在各分区的 Offset、以及 Lag(消息堆积量)。
Lag 这个指标特别有用。
数字一直往上涨,说明消费端跟不上生产速度,要么是消费逻辑卡住了,要么是消费者实例不够。
排查消费延迟的时候,先看这里准没错。
常见连接报错怎么排查
连不上是最常见的问题,按下面几条挨个查。
报 Unable to connect to broker
大概率是网络或者 hosts 的事。
Kafka 返回给客户端的是 Broker 的主机名,如果本机解析不了这个名字就会连不上。
把 Broker 的 IP 和主机名映射加进 hosts 文件:
- Windows:
C:\Windows\System32\drivers\etc\hosts - macOS / Linux:
/etc/hosts
测试连接一直转圈
先确认本机到 Broker 端口(默认 9092)网络通,内外网、防火墙、安全组都看一遍。
云上的集群尤其要注意,得开放外网访问端口,Broker 还要配好对外暴露的 advertised.listeners。
连上了但 Topic 是空的
检查账号有没有读权限,开了 ACL 的集群权限不对就是看不到数据。
常见问题
Q1. Offset Explorer 和 Kafka Tool 是同一个东西吗?
是的。
Kafka Tool 是旧名字,改名后叫 Offset Explorer,功能一脉相承,官网换成了 offsetexplorer.com。
网上老教程里的 Kafka Tool,指的就是它。
Q2. Offset Explorer 收费吗?
个人使用免费。
商业、教育、非营利等非个人用途需要买授权,下载后给 30 天评估期试用。
Q3. 连接时必须填 ZooKeeper 吗?
不一定。
3.x 版本支持直接配 Bootstrap servers 连接,新版 Kafka 已经在去 ZooKeeper 化。
老集群或者特定场景才需要填 ZooKeeper 地址。
Q4. 为什么消息显示成乱码或十六进制?
默认按字节数组显示导致的。
去连接的 Properties → Content Types,把 Key 和 Value 改成 String 或 Json 就正常了。
这是新手最容易卡住的地方。
Q5. Offset Explorer 支持 macOS 和 Linux 吗?
支持,三大平台都有。
Windows 和 macOS 的包自带 JRE,Linux 版需要自己先装 Java 环境。
写在最后
Offset Explorer 上手成本很低,真正要记的就两点。
一是连接配置看清 Bootstrap servers 和 Security,二是消息看不懂先改 Content Types。
把这两关过了,剩下的查消息、建 Topic、看 Lag 都是点点鼠标的事。
日常排查 Kafka 问题,比命令行省心不少。
如果连接配置或者消息格式还有没搞定的地方,欢迎在评论区聊聊你遇到的报错,一起看看怎么解决。
版权声明
未经授权,禁止转载本文章。
如需转载请保留原文链接并注明出处。即视为默认获得授权。
未保留原文链接未注明出处或删除链接将视为侵权,必追究法律责任!
本文原文链接: https://fiveyoboy.com/articles/kafka-offset-explorer-tutorial/
备用原文链接: https://blog.fiveyoboy.com/articles/kafka-offset-explorer-tutorial/