我正在使用带有 logback-spring.xml 的 Spring Boot。目前将 logback-spring.xml 中的 loglevel 定义为硬编码值。我需要从应用程序属性文件中注入这个值。
需要在属性文件中定义日志级别值 INFO/ERROR 或在 yml 中为不同的环境定义 Spring 配置文件想要以不同方式更改此日志级别。但由于某种原因,我的以下配置不起作用。
我的 logback-srping.xml 如下所示。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<springProperty name="myapplog" source="myapplog" />
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} -
%msg%n</pattern>
</encoder>
</appender>
<logger name="org.springframework" level="${myapplog}" additivity="false">
<appender-ref ref="console" />
</logger>
<logger name="com.myapp.package" level="${myapplog}" additivity="false">
<appender-ref ref="console" />
</logger>
<root level="INFO">
<appender-ref ref="console" />
</root>
</configuration>
我的 application-dev.properties 将有以下条目
myapplog=信息
但是对于我的 com.myapp.package 包,logback 始终将日志级别默认为 DEBUG。
我使用 Spring Bboot 1.5.2.Release 和 logback 作为日志库。