【问题标题】:Is it safe to delete Kafka/log old file?删除 Kafka/log 旧文件是否安全?
【发布时间】:2021-01-13 15:30:15
【问题描述】:

我的云服务器中有 Kafka 服务器实例,由 3 个代理、3 个 zk 和 12 个连接工作人员组成。众所周知,Kafka 的主文件夹由 bin、config 和 logs 组成。我想问我是否要保护磁盘大小,删除logs文件夹中的旧server.log、connect.log和zookeeper_gc.log文件是否安全?如果是,那么我如何定期删除/压缩它(例如每天或每周)?

【问题讨论】:

    标签: apache-kafka


    【解决方案1】:

    回答您的第一个问题,是的,可以删除旧的 Kafka 日志文件。仅当您想追溯历史日志时才可以使用它们。

    对于第二个,您可以检查 /config 文件夹下的 log4j 属性文件。默认情况下,Kafka 提供 DailyRollingAppender,您可以将其更改为您喜欢的 RollingAppender..

    来自默认 kafka log4j 属性的片段。参考https://github.com/apache/kafka/blob/trunk/config/log4j.properties

    log4j.appender.kafkaAppender=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.kafkaAppender.DatePattern='.'yyyy-MM-dd-HH
    log4j.appender.kafkaAppender.File=${kafka.logs.dir}/server.log
    log4j.appender.kafkaAppender.layout=org.apache.log4j.PatternLayout
    log4j.appender.kafkaAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
    

    您可以像下面这样更新 RollingAppender,这将保留最多 10 个 25MB 的文件,因此永远不会占用超过 250MB。

    log4j.appender.kafkaAppender=org.apache.log4j.RollingFileAppender
    log4j.appender.kafkaAppender.File=${kafka.logs.dir}/server.log
    log4j.appender.kafkaAppender.MaxFileSize=25MB
    log4j.appender.kafkaAppender.MaxBackupIndex=10
    log4j.appender.kafkaAppender.layout=org.apache.log4j.PatternLayout
    log4j.appender.kafkaAppender.layout.ConversionPattern=[%d] %p %m (%c)%n
    

    请注意,上述日志属性文件中有几个附加程序(参考上面的链接),您必须相应地更新每个附加程序的设置。

    【讨论】:

    • 要添加旁注,您需要重新启动 Kafka 代理以选择这些更新。
    • 太好了...很高兴能帮上忙!
    • 但我还有另一个问题。我也想为 zookeeper 和 kafka-connect 做这个配置。当我尝试使用正则表达式 .log. 手动删除所有转储文件时,突然在我重新启动 kafka 后,我无法重新启动我的 kafka connect
    • Zookeeper 也有一个类似的文件...您可能会发现这些很有用。 stackoverflow.com/questions/28691341/…stackoverflow.com/questions/26612908/…
    【解决方案2】:

    Kafka 使用 log.cleanup.policy 配置属性来定义清理策略。此外,它使用 log.retention.check.interval.ms 配置属性作为定期日志检查之间的间隔。因此,以上两个属性将允许一个在所需的时间间隔清理旧日志。

    这里有更多详细信息供您参考:https://jaceklaskowski.gitbooks.io/apache-kafka/content/kafka-log-cleanup-policies.html

    【讨论】:

    • 谢谢@khasim-umer,但我已经为我的 kafka 日志文件夹设置了它,我在 kafka 主文件夹中谈论它的日志文件夹,与 bin 文件夹和 config 文件夹并排。
    猜你喜欢
    • 1970-01-01
    • 2017-01-28
    • 2014-01-25
    • 2013-02-04
    • 2015-08-10
    • 2022-10-25
    • 2023-02-02
    • 1970-01-01
    • 2014-08-09
    相关资源
    最近更新 更多