如何查看kafka的所有topic
时间: 2023-03-19 14:24:10 浏览: 148
要查看 Kafka 中的所有主题,可以使用以下两种方法:
1. 使用 Kafka 自带的命令行工具
Kafka 自带了一个命令行工具 kafka-topics.sh,可以使用该工具列出所有主题。打开终端,进入 Kafka 的 bin 目录,执行以下命令:
```
./kafka-topics.sh --list --bootstrap-server localhost:9092
```
其中,--list 参数表示列出所有主题,--bootstrap-server 参数指定了 Kafka 的服务器地址和端口号。执行该命令后,会输出 Kafka 中所有的主题名称。
2. 在代码中使用 Kafka API
在代码中使用 Kafka API 也可以列出所有主题。示例代码如下:
```java
import java.util.Properties;
import org.apache.kafka.clients.admin.AdminClient;
import org.apache.kafka.clients.admin.ListTopicsResult;
import org.apache.kafka.clients.admin.TopicListing;
public class ListTopics {
public static void main(String[] args) throws Exception {
Properties props = new Properties();
props.put("bootstrap.servers", "localhost:9092");
AdminClient adminClient = AdminClient.create(props);
ListTopicsResult topics = adminClient.listTopics();
for (TopicListing topic : topics.listings().get()) {
System.out.println(topic.name());
}
adminClient.close();
}
}
```
该代码使用 Kafka 的 AdminClient API 来列出所有主题。执行该代码后,会输出 Kafka 中所有的主题名称。