SuperAPI AI 工具集

kafka

数据与分析

查看项目

更新于 10-16 07:42

技能介绍

用途 该技能面向 Apache Kafka 的日常管理操作,借助 Confluent REST Proxy 提供的 HTTP 接口完成主题、消费者组和消息层面的操作,无需直接使用 Kafka 原生客户端。

主要能力

  • 管理主题:列出所有主题;获取指定主题的详情,包括主题名称、分区数量以及配置信息。
  • 生产消息:向指定主题发送 JSON 格式消息,消息记录可包含 key 与 value,接口返回各记录的 offset。
  • 管理消费者:在指定消费者组下创建消费者实例,可配置实例名称、数据格式(如 json)以及 auto.offset.reset(如 earliest),返回 instance_id 与 base_uri。
  • 消费消息:从指定消费者组下的消费者实例读取记录,展示 topic、key、value 与 offset。

使用方式 所有操作通过 curl 调用 Confluent REST Proxy 完成,默认地址为 http://localhost:8082。示例包括:

  • 列出主题:curl -s "http://localhost:8082/topics" | jq '.[]'
  • 获取主题详情:curl -s "http://localhost:8082/topics/TOPIC_NAME" | jq '{name, partitions: (.partitions | length), configs}'
  • 生产消息:curl -s -X POST -H "Content-Type: application/vnd.kafka.json.v2+json" "http://localhost:8082/topics/TOPIC_NAME" -d '{"records":[{"key":"key1","value":{"message":"hello"}}]}' | jq '.offsets[]'
  • 创建消费者:curl -s -X POST -H "Content-Type: application/vnd.kafka.v2+json" "http://localhost:8082/consumers/my-group" -d '{"name":"my-consumer","format":"json","auto.offset.reset":"earliest"}' | jq '{instance_id, base_uri}'
  • 消费消息:curl -s -H "Accept: application/vnd.kafka.json.v2+json" "http://localhost:8082/consumers/my-group/instances/my-consumer/records" | jq '.[] | {topic, key, value, offset}'

适用场景 适用于需要通过 REST 接口快速查看或操作 Kafka 主题、消费者组与消息的场景,例如本地开发调试、验证消息生产与消费流程、检查主题分区与配置信息等。

限制 资料明确要求 Confluent REST Proxy 正在运行,默认端口为 8082。生产消息前必须始终确认。除上述内容外,资料未提供其他功能、权限、版本兼容性或运行环境等信息。