Kafka日志文件夹太大

jos*_*osh 1 logging apache-kafka kafka-producer-api

我们的 kafka 日志文件夹中有大量数据(来自 14 个月)。默认情况下,Kafka 正在编写这些。

Location of server.xml: /install/kafka_2.10-0.8.2.2/config/server.xml

 Here is the setting in server.xml:   log.dirs=/install/kafka-logs
Run Code Online (Sandbox Code Playgroud)
  1. 我想删除去年的日志。这会导致任何问题吗?我需要停止 kafka 还是可以在运行时禁用去年的日志?

  2. 我如何禁用/减少记录到这个文件夹?

ftr*_*ftr 7

不确定这个术语是否让您感到困惑——从某种意义上说,该文件夹的内容不是日志文件,例如“Kafka Broker started”等日志记录在那里。它包含传入消息附加到的日志文件,因此该文件夹包含您宝贵的 Kafka 数据。

您应该为您的主题设置适当的保留时间(以及代理级别的合理默认值),以便在不再需要消息时将其清除(默认值为 7 天)。消息将至少保留该时间段,之后可能会随时删除(由于日志文件的结构,这不是一个严格的时间戳)。

对于 1:您可以在运行时更改主题级别的保留时间 bin/kafka-topics.sh --zookeeper <zk> --alter --topic <topic> --config retention.ms=<retention in ms>

2:减少这种情况的唯一方法是 a) 发送更少的消息或 b) 减少主题的复制因子。这可能不是你所追求的。