旋转作为Linux服务运行的Spring Boot的日志

时间:2016-02-11 18:57:00

标签: spring logging spring-boot centos

我将我的jar文件作为服务部署在centos上并且它运行良好,但我需要旋转我的日志文件,使用logrotate这样做不起作用,因为没有输出发送到新的日志文件。

我正在使用logback,它正在登录文件appender,所以我的选项是

1-停止服务将控制台记录到日志文件并使用logback 2-如果可能,启用logrotate

1 个答案:

答案 0 :(得分:2)

您必须在logrotate-config中使用copytruncate选项。这对我来说就像一个魅力,但有一个小缺点,如联机帮助页中所述:

  

<强> copytruncate

     

在创建副本后截断原始日志文件,而不是移动旧日志文件并选择创建新日志文件。当某些程序无法被告知关闭其日志文件时可以使用它,因此可以继续永久地写入(追加)到前一个日志文件。请注意,复制文件和截断文件之间的时间片非常小,因此某些日志记录数据可能会丢失。使用此选项时,create选项将不起作用,因为旧的日志文件保持不变。