是否有任何 api 或工具来获取 kafka 主题中的摄取率

Is there any api or tool for getting ingestion ratio in a kafka topic

如何找到摄入率?即,每 second/minute 间隔

没有摄入 events/bytes

您可以在您的 kafka 设置中使用 jmx 导出器,并将抓取的指标发送到 prometheus(时间序列数据库)。

然后可以在 grafana 中可视化 prometheus 中的指标。 您将在那里获得主题级别指标,您可以在其中查看每个主题 second/minute 的摄取量

如另一个答案中所述,Kafka 通过 JMX 导出指标,涵盖字节 in/out 速率以及许多其他有趣的数据点。有关完整详细信息,请参阅文档中的 Monitoring section

建议在您计划 运行 Kafka 集群中收集并绘制任何这些指标。

现在,如果您只想在开发过程中快速获取这些值,您还有几个其他选择:

  • jconsole:这个图形工具是JVM自带的,可以显示所有的JMX指标。

  • kafka.tools.JmxTool:这个CLI工具是Kafka自带的,可以打印JMX metrics的值。例如,要获取代理摄取率,运行:

    ./bin/kafka-run-class.sh kafka.tools.JmxTool --object-name kafka.server:type=BrokerTopicMetrics,name=BytesInPerSec
    

要使这些工作正常,您必须启用 JVM 以在端口上公开 JMX。