为什么我配置好了logback-spring.xml仅在测试方法中有效
来源:3-2 日志的使用
in9
2018-12-17
我在学习到第七章发现,我在工程方法用任何 log.info(), log.error(), log.warn(),都不会在控制台输出,也不会在我配置好的路径下创建任何log文件。但在带有@Test的方法中才会生效。配置文件确认和老师的一样。而且已经装了lombok,在类上加有@Slf4j注解。项目运行一切正常,希望老师可以帮忙看下,谢谢。
以下为logback-spring.xml配置:
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<appender name="consoleLog" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<pattern>
%d - %msg%n
</pattern>
</layout>
</appender>
<appender name="fileInfoLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>DENY</onMatch>
<onMismatch>ACCEPT</onMismatch>
</filter>
<encoder>
<pattern>
%msg%n
</pattern>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--路径-->
<fileNamePattern>C:/data/shop/info.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<appender name="fileErrorLog" class="ch.qos.logback.core.rolling.RollingFileAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>ERROR</level>
</filter>
<encoder>
<pattern>
%msg%n
</pattern>
</encoder>
<!--滚动策略-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--路径-->
<fileNamePattern>C:/data/shop/error.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<root level="info">
<appender-ref ref="consoleLog"/>
<appender-ref ref="fileInfoLog"/>
<appender-ref ref="fileErrorLog"/>
</root>
</configuration>
以下为application.yml配置:
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
username: root
password: root
url: jdbc:mysql://127.0.0.1/shop?characterEncoding=utf-8&useSSL=false
jpa:
show-sql: true
jackson:
default-property-inclusion: non_null
server:
servlet:
context-path: /shop
写回答
1回答
-
廖师兄
2018-12-17
你试试换个思路解决。
先运行我的源码,是否正常
如果正常,说明不是电脑或者Idea的问题,肯定是代码的问题
代码问题,找差异,第一确认springboot版本是否相同
022020-05-15
相似问题