从Apache Kafka中的主题中删除消息

时间:2018-04-17 02:07:22

标签: java apache-kafka

所以我不熟悉Apache Kafka,我正在尝试创建一个简单的应用程序,以便我可以尝试更好地理解API。我知道这个问题已经在这里被问了很多,但是如何清除存储在主题上的消息/记录呢?

我见过的大多数答案都说要更改邮件保留时间或删除&重新创建主题。这些都不是我的选项,因为我无法访问server.properties文件。我没有在本地运行Kafka,它托管在服务器上。有没有办法在Java代码中做或许什么?

2 个答案:

答案 0 :(得分:4)

如果您正在寻找一种有选择地删除消息的方法,新的AdminClient API(可从Java代码中使用)提供以下deleteRecords方法:

https://kafka.apache.org/11/javadoc/org/apache/kafka/clients/admin/AdminClient.html

答案 1 :(得分:0)

克隆此Kakfa GitHub repository。将dir更改为它并运行以下命令以删除该主题。

bash bin/kafka-topics.sh --delete  --zookeeper ipaddress:2181  --topic topicname
相关问题