linux - logrotate 在 postrotate 脚本之后压缩文件

标签 linux shell logging compression logrotate

我有一个应用程序每天生成一个非常大的日志文件(每天约 800MB),因此我需要压缩它们,但由于压缩需要时间,我希望 logrotate 在重新加载/发送 HUP 信号后压缩文件应用程序。

/var/log/myapp.log {
    rotate 7
    size 500M
    compress
    weekly
    postrotate
        /bin/kill -HUP `cat /var/run/myapp.pid 2>/dev/null` 2>/dev/null || true
    endscript
}

是否已经存在压缩发生在后旋转之后的情况(这有悖常理)? 如果没有,谁能告诉我是否可以在没有额外的命令脚本(一个选项或一些技巧)的情况下做到这一点?

谢谢 托马斯

最佳答案

在此处添加此信息以防其他任何人在实际搜索想要一种在压缩完成后在文件上运行脚本的方法时遇到此线程。

如上所述,使用 postrotate/endscript 对此没有好处。

相反,您可以使用 lastaction/endscript,它可以完美地完成这项工作。

关于linux - logrotate 在 postrotate 脚本之后压缩文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7271945/

相关文章:

linux - NFS 缓存清理命令?

shell - 将 groovy 变量传递给 shell 脚本

php - 空白的 WordPress 登录页面

linux - 无法在 Linux 7 中安装 Oracle 数据库

linux - 在文件末尾添加一列,其中包含特定行数的值

bash - 通过 shell 脚本读取文件并将值放入 WHERE 子句

linux - 将函数的返回值保存在文件中

c# - NLog Header(忽略布局)

c# - MVVM - 在 View 中显示来自多个模型实体的消息

linux - 用于成像 Linux 应用程序的最佳语言/框架