springboot+maven项目配置日志输出文件
第一步:确认项目是否有日志输出
1、pom文件中加入依赖(这个依赖一般情况下都已经存在),这样项目就包含日志功能,在代码中就可以使用日志输出类
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
日志输出类使用例子
public class ServerApplication {
private static final Logger logger = LoggerFactory.getLogger(ServerApplication.class);
public static void main(String[] args) {
SpringApplication app = new SpringApplication(ServerApplication.class);
app.run(args);
logger.info("启动");
}
}
第二步:配置日志
1、编写logback.xml
在resource目录下创建log文件夹,添加logback.xml
logback.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">
<!--根据范围过滤,是ERROR过滤,不是的话使用该规则-->
<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>/logs/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>/logs/error.%d.log</fileNamePattern>
</rollingPolicy>
</appender>
<!--引入日志配置,ROOT下整个项目都适用-->
<root level="info">
<appender-ref ref="consoleLog"/>
<appender-ref ref="fileInfoLog"/>
<appender-ref ref="fileErrorLog"/>
</root>
</configuration>
第三步:application.yml中配置logging
#logging
logging:
config: classpath:log/logback.xml
第四步:重启项目,在配置的对应目录下会有日志文件输出