2016-06-22 9 views
1

kafkaサーバーで新しいトピックを作成したかったのですが、その前にサーバーからトピックリストを取得したいのですが、接続が確立されたらどのように達成できますか?kafka-nodeライブラリを使用してkafkaサーバからトピックのリストを取得するにはどうすればよいですか?

main.js

var groupId = 'test1'; 
    var clientId = "consumer-" + Math.floor(Math.random() * 10000); 
    var options = {autoCommit: true, fetchMaxWaitMs: 100, fetchMaxBytes: 10 * 1024 * 1024, groupId: groupId}; 
    console.log("Started consumer: ", clientId); 
    var consumer_client = new Client(kafkaConn,clientId); 
    var client = new Client(consumer_client.connectionString,clientId); 
    var consumer = new HighLevelConsumer(client, topics, options); 

答えて

1

kafka-nodeでこれを行うには本当の直接的な方法がありますが、node-zookeeper-clientでそれを行うことができます。 kafka.Clientがインスタンス化されている場合は、既にzookeeperクライアントにアクセスできます。あなたはできるだけ:

client.zk.client.getChildren("/brokers/topics", (err, children, stats) => { 
    children.forEach(child => console.log(child)); 
}); 
関連する問題