列出kafka代理上的所有正在运行的配置

时间:2019-07-02 00:24:46

标签: apache-kafka

我希望列出kafka代理上所有活动的配置。我可以在server.properties文件中看到配置,但这还不是全部,它不能显示所有配置。我希望能够看到所有配置,甚至是默认配置。这可能吗? 对此方向的任何指尖将不胜感激。

2 个答案:

答案 0 :(得分:1)

没有命令可以列出kafka代理的当前配置。但是,如果要查看所有具有默认值和重要性的配置参数,请在此处列出

https://docs.confluent.io/current/installation/configuration/broker-configs.html

答案 1 :(得分:0)

您可以通过Kafka AdminClient以编程方式实现该目标(我使用的是2.0 FWIW-界面仍在不断发展):

        final String brokerId = "1";
        final ConfigResource cr = new ConfigResource(Type.BROKER, brokerId);
        final DescribeConfigsResult dcr = admin.describeConfigs(Arrays.asList(cr));
        final Map<ConfigResource, Config> configMap = dcr.all().get();
        for (final Config config : configMap.values()) {
            for (final ConfigEntry entry : config.entries()) {
                System.out.println(entry);
            }
        }

KafkaAdmin Javadoc

每个配置条目都有一个' source '属性,该属性指示该属性来自何处(对于代理,它是默认的代理配置或每个代理覆盖;对于主题,还有更多可能的值)