【问题标题】:Disable system logs for Spring Boot app running as Linux init.d service禁用作为 Linux init.d 服务运行的 Spring Boot 应用程序的系统日志
【发布时间】:2021-07-29 18:15:05
【问题描述】:

我有一个 Spring Boot 应用程序作为 init.d 服务在 docker 容器上运行。我按照Spring Boot Unix/Linux Services 指南进行了设置。

由于应用程序是作为守护程序服务启动的,操作系统会在/var/log/目录下创建日志文件,并在其中记录应用程序日志。问题是由于应用程序有很多日志记录,文件的大小会迅速增加。此外,我配置了一个 logback 来管理应用程序日志,因此,我不需要默认的系统日志记录。

我尝试了customizing the startup script,但我只设法更改了默认值(LOG_FILENAMELOG_FOLDER),而不是删除它们。

所以我的问题是:有没有办法可以禁用特定 init.d 服务的系统日志?如果是,如何?

【问题讨论】:

    标签: java linux spring-boot logging init.d


    【解决方案1】:

    一种解决方案是创建与应用程序.jar 文件同名的.conf 文件,并将它们放在同一目录中。例如:

    /home/
          application.jar
          application.conf
    

    现在 .jar 旁边有了 .conf 文件,打开并写入

    LOG_FOLDER=/dev
    LOG_FILENAME=null
    

    here 所述,/dev/null 将丢弃那里写入的所有内容,但会返回成功。

    这种方法的缺点是更改 .jar 文件名或目录将需要分别更改 .conf 文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-25
      • 1970-01-01
      • 2019-03-07
      • 2019-12-10
      • 2015-01-13
      • 2021-01-02
      • 2021-09-24
      • 2018-03-16
      相关资源
      最近更新 更多