From: https://blog.csdn.net/lxh18682851338/article/details/78560295
默认情况下,SLF4j日志记录包含在Spring Boot Web应用程序中,只需要启用它就可以了。
注意:查看此Spring Boot Logback XML模板以了解默认的日志记录模式和配置。
SLF4j示例
我们将在接下来的文章中,创建一个项目:web-slf4j-logging
,演示这几种常用的日志配置方法。
1. application.properties
要启用日志记录,请在资源文件夹的根目录中创建一个application.properties
文件。logging.level
- 定义日志记录级别,日志记录将被输出到控制台。
文件: application.properties
-
logging.level.org.springframework.web=ERROR
-
logging.level.com.yiibai=DEBUG
logging.file
– 定义日志文件(可根据需要写上,如:c:/logs/mylog.log
),将日志记录输出到文件和控制台。
文件: application.properties
-
logging.level.org.springframework.web=ERROR
-
logging.level.com.yiibai=DEBUG
-
#output to a temp_folder/file
-
logging.file=${java.io.tmpdir}/application.log
-
#output to a file
-
#logging.file=c:/logs/mylog.log
logging.pattern
- 定义自定义日志记录模式。
文件: application.properties
-
logging.level.org.springframework.web=ERROR
-
logging.level.com.yiibai=DEBUG
-
# Logging pattern for the console
-
logging.pattern.console= "%d{yyyy-MM-dd HH:mm:ss} - %msg%n"
-
# Logging pattern for file
-
logging.pattern.file= "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n"
-
logging.file=c:/logs/mylog.log
2. application.yml
上面的配置,也可以使用YAML格式实现相同的效果。
文件:application.yml
logging:level:org.springframework.web: ERRORcom.yiibai: DEBUGpattern:console: "%d{yyyy-MM-dd HH:mm:ss} - %msg%n"file: "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n"file: c:/logs/mylog.log
Shell
3. 经典Logback.xml
如果您不喜欢Spring Boot日志记录模板,也可以在资源文件夹的根目录或类路径的根目录中创建一个标准的logback.xml
文件。它将会覆盖Spring Boot日志记录模板。
文件:logback.xml
-
<?xml version="1.0" encoding="UTF-8"?>
-
<configuration>
-
<property name="DEV_HOME" value="c:/logs" />
-
<appender name="FILE-AUDIT"
-
class="ch.qos.logback.core.rolling.RollingFileAppender">
-
<file>${DEV_HOME}/debug.log</file>
-
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
-
<Pattern>
-
%d{yyyy-MM-dd HH:mm:ss} - %msg%n
-
</Pattern>
-
</encoder>
-
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-
<!-- rollover daily -->
-
<fileNamePattern>${DEV_HOME}/archived/debug.%d{yyyy-MM-dd}.%i.log
-
</fileNamePattern>
-
<timeBasedFileNamingAndTriggeringPolicy
-
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
-
<maxFileSize>10MB</maxFileSize>
-
</timeBasedFileNamingAndTriggeringPolicy>
-
</rollingPolicy>
-
</appender>
-
<logger name="com.yiibai" level="debug"
-
additivity="false">
-
<appender-ref ref="FILE-AUDIT" />
-
</logger>
-
<root level="error">
-
<appender-ref ref="FILE-AUDIT" />
-
</root>
-
</configuration>
XML
4. 设置根级别
文件:application.properties
# root logging level, warning : too much output
logging.level.=DEBUG
文件:application.yml
-
logging:
-
level:
-
ROOT: DEBUG
使用 mvn spring-boot:run
命令运行上面示例,应该会看到有日志输出。代码下载请找到Spring Boot目录中的项目:web-slf4j-logging
。