查看Kafka消息
客户端连接Kafka实例生产消费过程中,如果遇到消息丢失或消息消费失败等问题,可以通过消息查询功能来查看特定消息的内容和相关属性,帮助排查问题根因。
您可以查看指定Topic不同分区的偏移量、消息大小、创建时间以及消息正文。
操作视频
本视频演示查看Kafka消息的操作。
约束与限制
- 当Topic中的数据量比较大时,单副本Topic查询消息可能会报“内部服务错误”,建议根据数据量适当减小查询时间范围。
- 使用消息内容或KEY查询消息时,由于查询资源和性能限制,最大搜索范围为10000条消息且所有消息的总大小不超过200MB,最多返回满足查询要求的前10条消息。
- 在所有分区查询消息时,由于查询资源和性能限制,最多返回500条数据。在单分区查询消息时,没有此限制。
- 控制台只能展示4KB以内的消息,超过4KB的消息,请单击“下载消息”,下载到本地查看消息完整的内容。
查看Kafka消息
- 登录Kafka控制台。
- 在管理控制台左上角单击
,选择Kafka实例所在的区域。
- 单击Kafka实例名称,进入实例详情页面。
- 在左侧导航栏选择“实例管理 > 消息查询”,进入消息列表页面。
- Kafka实例支持两种查询消息的方法:按偏移量查询和按创建时间查询。
- 如果您知道消息所在Topic的分区和偏移量,可以使用按偏移量查询消息,具体查询参数参见表1。
- 如果您知道消息发送时间段,但是不知道消息偏移量,可以使用按创建时间查询消息,具体查询参数参见表2。
表2 按创建时间查询消息 参数名称
说明
Topic名称
选择待查询消息的Topic名称。
分区
输入消息所在的分区。
如果未设置具体分区,查询结果显示Topic所有分区的消息。
基于分区的消息查询限制说明:
- 所有分区查询限制:由于查询资源和性能限制,最多返回500条消息,且所有消息总大小不超过200MB。
500条消息的获取过程:后台按分区顺序(从分区0开始)依次拉取各分区最新的500条消息,若总大小超过200MB则立即终止查询。然后将已查询到的消息按时间排序,最终返回时间最新的500条消息。
- 单分区查询限制:没有500条/200MB的限制,可以完整获取该分区内符合时间条件的全部消息。
大数据量查询建议:通过缩小查询时间范围或指定分区查询,提升查询效率。
KEY查询
输入消息的KEY,查询结果为包含KEY的所有消息。
例如:Topic包含两条消息,KEY分别为“abc”和“abcd”,在“KEY查询”中输入“abc”,查询结果会同时返回这两条消息。
基于KEY的消息查询限制说明:由于查询资源和性能限制,最大搜索10000条消息且所有消息总大小不超过200MB,最多返回包含KEY的前10条消息。
内容查询
支持设置多个查询条件,查询结果为满足所有查询条件的消息。
设置查询条件的方法如下:
基于内容的消息查询限制说明:由于查询资源和性能限制,最大搜索10000条消息且所有消息总大小不超过200MB,最多返回符合关键字的前10条消息。
查询超大消息(即单条消息超过20KB)或时间跨度大的消息时,建议将消息下载到本地,在本地进行关键字查询。
创建时间
消息的创建时间,设置待查询消息的时间范围。
警告:当Topic中的数据量比较大时,单副本Topic查询消息可能会报“内部服务错误”,建议根据数据量适当减小查询时间范围。
- 所有分区查询限制:由于查询资源和性能限制,最多返回500条消息,且所有消息总大小不超过200MB。
- 单击“搜索”,查询消息。
查询结果如下:
图1 查询Topic消息表3 消息的参数说明 参数名称
说明
Topic名称
消息所在的Topic名称。
分区
消息所在的分区。
偏移量
消息在分区中的位置。
消息大小
消息存入磁盘的大小,单位为B。
创建时间
消息的创建时间。创建时间由生产客户端在生产消息时通过CreateTime指定的,如果生产消息时没有设置此参数,创建时间会默认为1970。
- 单击“查看消息正文”,弹出“查看消息正文”对话框,查看消息的内容,包括Topic名称、分区、偏移量、创建时间和消息正文。
控制台只能展示4KB以内的消息,超过4KB的消息,请单击“下载消息”,下载到本地查看消息完整的内容。
- (可选)如果需要恢复默认设置,单击“重置”。
相关文档
- 如果您希望通过API查看Kafka消息,请参考查询消息。
- 为什么消息创建时间显示1970?
- 为什么Console页面上,消息查询查不到消息?