【问题标题】:Wipe clean logfile on daily basis with logrotate每天使用 logrotate 擦除干净的日志文件
【发布时间】:2018-06-01 14:10:16
【问题描述】:

我想每天清理一个 Docker 容器日志(无需存储/归档数据)。我在/etc/logrotate.d 中创建了一个名为docker 的文件,并将以下内容放入其中:

/var/lib/docker/containers/*/*.log {
  rotate 0      #do not keep archives
  daily         
  missingok
  copytruncate  #continue working in the same log file
}

好吧,但它不起作用。因此,显然我的 logrotate 配置中的某些内容不正确。 AFAIK,我不需要为此设置 crontab。我的配置错了吗?我有什么遗漏的吗?

有没有一种无需等待一天就可以运行和测试logrotate 的方法?

【问题讨论】:

    标签: linux logrotate


    【解决方案1】:

    rotate 0 在这里是多余的,0 是默认的轮换,也就是说,不轮换,旧的被删除。

    您可以使用它进行测试,

    $ logrotate -f /etc/logrotate.d/docker
    

    最好先输入rotate 1,然后再用rotate 0 来检查logrotate 是否正常工作。

    如果logrotate 安装正确,那么/etc/cron.daily/logrotate 中就会有一个crontab 条目。该文件读取配置文件/etc/logrotate.conf,其中包括/etc/logrotate.d下的任何内容

    HTH

    【讨论】:

      猜你喜欢
      • 2018-10-12
      • 2019-12-12
      • 2014-01-27
      • 2020-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多