compress
操作之前,数据会被复制一次。这曾经给我们造成了问题,不过那是我们的错误,因为我们不应该离lv
空间限制那么近。另外,正如man
代码片段中所述,在复制和截断操作之间可能会丢失一些日志数据。 - Belmin Fernandezecho
这样的显式输出命令时,这才有效。从脚本中调用并输出内容的第三方工具的输出不能以这种方式重定向到日志记录器。 - Daniel Alderpostrotate
脚本,在旋转完成后重新启动您的脚本。这对于许多守护进程(重新启动或重新加载守护进程)都是这样做的,但由于不了解您的脚本,我不知道这个解决方案是否适合您(您的脚本是否依赖于一段时间前生成的某些状态)。
/etc/logrotate.d/your-script-name
的内容:
/var/log/your-script-name.log {
# your current logrotate options
...
postrotate
# this supposing you have the current pid stored
cat /run/your-script-name.pid | xargs -r kill
#relaunch it again
/usr/local/bin/your-script-name
endscript
}