如何看待Kafka对某一特定主题的保留

jogvjijk  于 2021-06-07  发布在  Kafka
关注(0)|答案(4)|浏览(401)

我想查看为特定主题设置的保留期。有什么命令吗?我试过了

bin/kafka-topics.sh --zookeeper hostname:2181 --alter --config retention.ms=172800000 --topic <topic_name>

用于删除2天以前的数据。但我想看看所有主题的保留期都有多少天。

iyr7buue

iyr7buue1#

其他方法:
通过容器使用call sh命令

docker run --rm -it confluentinc/cp-kafka:latest sh -c "kafka-topics --zookeeper 11.22.33.44:5555 --describe --topic topic-name"


使用Kafka工具

考虑到它只显示与默认值不同的参数。
在上面的示例中,retention.ms是14天,而默认值是7天。

irtuqstp

irtuqstp2#

如果您更改了主题并想查看主题配置,下面的命令将很有帮助

kafka-topics.sh --zookeeper localhost:2181 --describe --topics-with-overrides

这将只描述主题以及设置了不同于集群默认设置的配置的配置。
如果您想查看所有主题的配置,您可以查看这些属性 log.retention.hours 或者 log.retention.msserver.properties 在kafka config目录中。

igetnqfo

igetnqfo3#

只需使用下面的命令即可
kafka-topics.sh—引导服务器ip:9092—描述—主题名称
它将与其他信息一起打印delete.retention.ms。
将显示一个示例输出
topic:topic name 理想配偶tioncount:6 replicationfactor:1 configs:compression.type=gzip,segment.bytes=1073741824,retention.ms=100,max.message.bytes=100001200,delete.retention.ms=100000

Topic: TOPIC NAME   Partition: 0    Leader: 2   Replicas: 2 Isr: 2
Topic: TOPIC NAME   Partition: 1    Leader: 3   Replicas: 3 Isr: 3
Topic: TOPIC NAME   Partition: 2    Leader: 1   Replicas: 1 Isr: 1
Topic: TOPIC NAME   Partition: 3    Leader: 2   Replicas: 2 Isr: 2
Topic: TOPIC NAME   Partition: 4    Leader: 3   Replicas: 3 Isr: 3
Topic:  TOPIC NAME  Partition: 5    Leader: 1   Replicas: 1 Isr: 1
kqlmhetl

kqlmhetl4#

请参阅kafka文档中的配置“log.retention.hours”:
删除日志文件之前保留日志文件的小时数(以小时为单位),第三级为log.retention.ms属性
默认值为168小时,即7天。

相关问题