我们正在为我们的日志处理设置kafka (v0.8)和zookeeper。我正在尝试使用在https://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol#AGuideToTheKafkaProtocol-TheAPIs中定义的API,尝试使用Metadata API来获取所有主题和分区的信息。文档说,元数据请求可以被定向到集群中的任何代理。我不清楚如何定向请求(或者如何确定请求可以定向到的代理之一)。我正在编写的代码是用Java编写的,用于设置一个全面的监控系统。
有没有人有这方面的示例代码?
有没有人能提供一个示例代码,用于使用那些用于监视且与消费者或生产者无关的API?我见过Scala中的代码,但我不知道Scala,我必须为我们的商店用Java编写代码。
会非常感谢任何可能有帮助的事情。
发布于 2015-07-10 16:00:31
您可以在Consumer中设置代理。你可以在他们的文档中使用Kafka的SimpleConsumer Example。下面是一些示例代码
// some sample values
String CLIENT_NAME = "_YOUR_CLIENT_NAME";
int DEFAULT_FETCH_SIZE = 300000; // 0.3 MB, default from kafka
int BUFFER_SIZE = 64 * 1024;
int CONSUMER_TIMEOUT = 5000;
SimpleConsumer consumer = new SimpleConsumer(YOUR_HOST, YOUR_PORT, CONSUMER_TIMEOUT, BUFFER_SIZE, CLIENT_NAME);
List<String> topics = Collections.singletonList("myTopic");
TopicMetadataRequest req = new TopicMetadataRequest(topics);
kafka.javaapi.TopicMetadataResponse response = consumer.send(req);你能详细说明你在寻找什么样的信息吗?信息可以在TopicMetadata、PartitionMetadata等格式中。
https://stackoverflow.com/questions/28205737
复制相似问题