Spring Boot在测试过程中使用/tmp/spring.log文件

我的一个Spring Boot应用程序在其Maven 测试 阶段遇到了问题。

在测试和“常规”应用程序运行时期间,Spring

Boot应用程序都使用与相似的logback配置文件src/main/resources/logback-

spring.xml。此配置文件(以传递方式)包括logb​​ack配置文件base.xmlfile-

appender.xml。这些配置文件设置了 logback属性LOG_FILE=/tmp/spring.log

我认为最好的做法是文件/tmp/server.log由用户和组拥有${MY_SPRING_BOOT_APPLICATION}

Jenkins以用户身份运行jenkinsjenkins没有对的写入权限/tmp/server.log。因此,当由Jenkins执行时,JUnit测试失败。

  • 什么是配置日志记录的最佳方法,以使其在Jenkins 带有测试的构建 过程中运行良好, 在利用Spring Boot的 SysV init.d 服务功能(将日志放入)时设置 每日滚动日志记录 ? __/var/log/
  • /tmp/spring.log如果同时运行两个或多个Spring Boot应用程序,文件是否会同时被修改(因此被破坏)?

回答:

在我的Spring Boot应用程序中,我添加<property name="LOG_TEMP"

value="./logs"/>src/test/resources/logback-test.xml

<?xml version="1.0" encoding="UTF-8"?>

<configuration scan="true">

<property name="LOG_TEMP" value="./logs"/>

<include resource="org/springframework/boot/logging/logback/base.xml"/>

<logger name="com.example" level="INFO"/>

<root level="WARN">

<appender-ref ref="CONSOLE"/>

</root>

</configuration>

这样,在Maven测试期间,将在当前(测试)工作目录中创建一个单独的日志文件。

欢迎 提供帮助的道具。

以上是 Spring Boot在测试过程中使用/tmp/spring.log文件 的全部内容, 来源链接: utcz.com/qa/428850.html

回到顶部