在我的logback-spring.xml中,如果我将记录器级别包含为INFO,它工作正常,但除了INFO(WARN,ERROR)之外,甚至应用程序都没有加载。在登录控制台之后,应用程序启动将永久停止。{{ 3}}。任何帮助都是值得的。
在控制台中输出日志:
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.5.2.RELEASE)
的logback-spring.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml" />
<appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}-%msg %n
</Pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>TRACE</level>
</filter>
</appender>
<appender name="minuteRollingFileAppender"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>/usr/src/app/logs/test%d{yyyy-MM-dd_HH-mm}.log
</FileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{35}-%msg %n</Pattern>
</encoder>
</appender>
<springProfile name="dev,staging">
<root>
<level value="INFO" /><!--ERROR not working -->
<appender-ref ref="minuteRollingFileAppender" />
<appender-ref ref="consoleAppender" />
</root>
</springProfile>
</configuration>
答案 0 :(得分:2)
可以在控制台中明确包含或排除Spring-boot标题。某些IDE中有一些设置可以做到这一点。
如果您没有任何日志级别与INFO
不同的日志,您将只看到应用程序启动的横幅。看起来应用程序没有启动,但仅仅因为没有写入日志。
排除application.properties
中的横幅:
spring.main.banner-mode=off
或main
:
SpringApplication app = new SpringApplication(SpringBootConsoleApplication.class);
app.setBannerMode(Banner.Mode.OFF);
app.run(args);