2016-11-21 1 views
2

J'écris une application pour effectuer un tas d'opérations sur un sujet kafka via l'API Java. Je suis capable de créer un sujet et d'ajouter des partitions. J'ai besoin d'aide pour récupérer les métadonnées de sujet (telles que les partitions, les courtiers) et les configurations et mettre à jour les configurations.Récupération et mise à jour des configurations de rubrique Kafka via l'API Java

Pour référence, je veux mettre à jour les configurations de niveau de sujet fournies ici - https://kafka.apache.org/documentation#configuration tels que cleanup.policy, compression.type etc

Répondre

3

Vous pouvez utiliser le code ci-dessous pour imprimer les configs niveau de sujet. L'utilisation de la mise à jour de la config est similaire.

String [] args = { "--zookeeper", "localhost: 2181", "--entity type", "sujets", "--entity-name", "test", " --décrire"};

ConfigCommand.main (args);

En ce qui concerne l'obtention des métadonnées, s'il vous plaît se référer à Trouver le courtier principal pour un sujet et partage en https://cwiki.apache.org/confluence/display/KAFKA/0.8.0+SimpleConsumer+Example:

AJOUTÉE: Ajouter config chercher & exemple de mise à jour à l'aide adminutils:

ZkUtils zkUtils = ZkUtils.apply("localhost:2181/k1", 6000, 10000, JaasUtils.isZkSecurityEnabled()); 

    Properties pp = new Properties(); 
    pp.setProperty("delete.retention.ms", "3000000"); 
    pp.setProperty("file.delete.delay.ms", "40000"); 
    AdminUtils.changeTopicConfig(zkUtils, "test", pp); 
    Properties p = AdminUtils.fetchEntityConfig(zkUtils, ConfigType.Topic(), "test"); 
    System.out.println(p); 
+0

Im essayant d'atteindre les résultats grâce à l'API Kafka Admin Utils – user6708151