java - SpringBoot logback-spring.xml springprofile 不工作

标签 java spring logging spring-boot logback

在我的 logback-spring.xml 中,如果我将记录器级别包含为 INFO,它工作正常,但对于除 INFO(警告,错误)之外的其他应用程序,甚至应用程序都不会加载。在控制台应用程序登录到下面之后,启动将永远停止。 This is the link we tried for this .任何帮助都是值得赞赏的。

在控制台中输出日志:

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: 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>

最佳答案

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);

关于java - SpringBoot logback-spring.xml springprofile 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43359030/

相关文章:

java - 网络代理背后的 Spring-Boot

spring - Spring Boot JAX-RS/CXF依赖项注入(inject)可在JAR中工作,但不能在WAR中工作

javafx Tableview 按日期排序

c# - 为什么java和c#有终结器?

java - 无法打开 Spring 类路径资源 [applicationContext.xml],因为它不存在

html - 如何从网页解析 Gmail 聊天记录?

python - 从Google Cloud Run执行记录的最简单方法

python - 为什么 xlwings 禁止记录到文件

java - 使用 JpaRepository 接口(interface)。如何让 entitymanager 设置属性?

java - 如何使用扫描仪从文件中读取并以不同的顺序显示