【问题标题】:Is there any Kafka Monitoring API in Java? [closed]Java中是否有任何Kafka监控API? [关闭]
【发布时间】:2015-12-04 11:05:36
【问题描述】:

我正在尝试编写 Java 代码来获取消费者偏移和滞后 我们的 kafka 集群。 是否有 Java API 来获取这些信息?

【问题讨论】:

    标签: java message-queue apache-kafka broker


    【解决方案1】:

    你应该在这个项目中找到你需要的东西:https://github.com/apache/storm/tree/master/external/storm-kafka/src/jvm/storm/kafka

    在那里你可以看到 kafka.javaapi.consumer.SimpleConsumer 以及它是如何被使用的。使用 Maven 从 Maven 存储库中提取所有依赖项,您应该会看到一个 kafka_2.10-0.8.2.1.jar 文件,该文件提供了您需要的 Kafka API 调用。

    上面引用的 github 项目应该为您提供有关如何使用 API 的额外指示。

    【讨论】:

    • 不幸的是,SimpleConsumer 让我知道了一个客户的偏移量,而不是主题上的所有消费者。我需要所有的偏移量。此外,它没有任何关于滞后的信息。但是,我在生产者端而不是消费者端需要这个 API。
    • @user3359139 相同的 API 有包 kafka.producer ,它拥有生产者和消费者类所需的一切。
    • 好的,然后告诉我为主题和消费者组提供滞后大小的 API...
    【解决方案2】:

    您可以使用 Java 管理扩展 (JMX) 来监控您的 KAFKA
    Kafka 已经内置了 JMX,您只需启用它 -

    在 kafka 设置中,编辑“kafka-run-class.sh”脚本文件,添加以下行:

    KAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false"

    另外,编辑 kafka 设置中的“kafka-server-start.sh”脚本文件,通过添加以下行将 JMX 端口设置为 9999:

    导出 JMX_PORT=${JMX_PORT:-9999}

    【讨论】:

    • tnx,但我喜欢漂亮的 API
    • 在它上面使用 Ganglia。您将获得所有您希望看到的指标。
    【解决方案3】:

    是的,有一个用java编写的应用程序来跟踪Kafka集群中所有消费者组的偏移量。你可以得到Json或html的结果,你也可以配置应用程序定期将偏移量指标推送到 StatsD 服务器。

    这是项目:

    https://github.com/Symantec/kafka-monitoring-tool

    监测结果:

    【讨论】:

    • 这个链接已经失效,甚至在赛门铁克的页面上也没有更新!没用吗?
    【解决方案4】:

    group的偏移量存储在zookeeper中,需要一个zookeeper实例,然后使用zk.getChildren(path,false)方法获取节点信息,使用zk.getData(path,false,null)方法获取偏移量信息。

    设置path="/consumers"即可获取消费者组列表。

    设置path="/consumers/xxx group/offset/xxx topic/xxx partition"即可获取偏移量。

    【讨论】:

      【解决方案5】:

      如果您使用 Kafka 客户端库及其 API,您可以获得此信息。也就是说,如果您关注 Kafka 指标/监控,有些工具可以为您提供这些信息以及更多信息。来自Linkedin 的Burrow 和来自Sematext 的SPM for Kafka 是两个不错的选择。

      【讨论】:

        猜你喜欢
        • 2018-08-30
        • 1970-01-01
        • 2017-06-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-03
        • 2010-09-26
        • 1970-01-01
        相关资源
        最近更新 更多