我已经经历了Spring Boot uses /tmp/spring.log file during testing
但这并没有帮助。我的 spring boot 应用程序中有一个 logback.xml,当我启动它时,它会在 var/tmp/spring.log 中创建一个日志。现在这不能在客户端站点上工作。有没有办法将它配置为不创建它我的日志返回已经将控制台记录在我在我的附加程序中定义的日志文件中。我什至不知道这正在发生。这个 spring.log 与滚动文件附加程序一起使用,这意味着它将每天继续创建日志。
我删除了:
<!--include resource="org/springframework/boot/logging/logback/base.xml"/-->
来 self 的 logback.xml 但它仍然没有阻止它访问文件或创建文件
任何帮助将不胜感激
编辑:我的 logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true">
<include resource="org/springframework/boot/logging/logback/base.xml"/>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>logs/fix.%d{yyyy-MM-dd}.log</fileNamePattern>
<maxHistory>90</maxHistory>
</rollingPolicy>
<encoder>
<charset>utf-8</charset>
<Pattern>%d %-5level [%thread] %logger{0}: %msg%n</Pattern>
</encoder>
</appender>
<appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender">
<queueSize>512</queueSize>
<appender-ref ref="FILE"/>
</appender>
<logger name="com.comp.myapp" level="INFO"/>
<contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
<resetJUL>true</resetJUL>
</contextListener>
<root level="INFO">
<appender-ref ref="FILE" />
<!--<appender-ref ref="CONSOLE"/>-->
</root>
由此产生的问题是,如果我对同一个用户部署同一个应用程序两次。两个应用程序都写入同一个文件,这是没有意义的。如果我在同一台机器上部署了另一个 spring boot 应用程序,它们将写入 tmp 文件夹中的同一个 spring.log。我不明白创建“偷偷摸摸”的日志背后的原因是什么(我称之为偷偷摸摸)
最佳答案
替换
<include resource="org/springframework/boot/logging/logback/base.xml"/>
与
<include resource="org/springframework/boot/logging/logback/defaults.xml" />
详情链接:-
关于java - tmp下的spring boot spring.log,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50386520/