logback 默认集成在 spring boot 中,是基于 slf4j 的日志框架。默认情况下 spring boot 是以 info 级别输出到控制台。
它的日志级别是:
all < trace < debug < info < warn < error < off
logback 可以直接在 application.properties 或 application.yml 中配置,但仅支持一些简单的配置,复杂的文件输出还是需要配置在 xml 配置文件中。配置文件可命名为 logback.xml , logback 自动会在 classpath 的根目录下搜索配置文件,不过 spring boot 建议命名为 logback-spring.xml,这样会自动引入 spring boot 一些扩展功能。
如果需要引入自定义名称的配置文件,需要在 spring boot 的配置文件中指定,如:
1
2
|
logging:
config: classpath:logback-spring.xml
|
同时 spring boot 提供了一个默认的 base.xml 配置,可以按照如下方式引入:
1
2
3
4
|
<?xml version= "1.0" encoding= "utf-8" ?>
<configuration>
<include resource= "org/springframework/boot/logging/logback/base.xml" />
</configuration>
|
base.xml 提供了一些基本的默认配置以及在控制台输出时的关键字配色,具体文件内容可以看这里,可以查看到一些常用的配置写法。
详细配置
变量
可以使用 <property> 来定义变量:
1
|
<property name= "log.path" value= "/var/logs/application" />
|
同时可以引入 spring 的环境变量:
1
2
|
<property resource= "application.yml" />
<property resource= "application.properties" />
|
所有的变量都可以通过 ${} 来调用。
输出到控制台
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<?xml version= "1.0" encoding= "utf-8" ?>
<configuration>
<appender name= "console" class = "ch.qos.logback.core.consoleappender" >
<encoder>
<pattern>%.-1level|%- 40 .40logger{ 0 }|%msg%n</pattern>
</encoder>
</appender>
<logger name= "com.mycompany.myapp" level= "debug" />
<logger name= "org.springframework" level= "info" />
<logger name= "org.springframework.beans" level= "debug" />
<root level= "warn" >
<appender-ref ref= "console" />
</root>
</configuration>
|
输出到文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<property name= "log_file" value= "logfile" />
<appender name= "file" class = "ch.qos.logback.core.rolling.rollingfileappender" >
<file>${log_file}.log</file>
<rollingpolicy class = "ch.qos.logback.core.rolling.timebasedrollingpolicy" >
<!-- 每日归档日志文件 -->
<filenamepattern>${log_file}.%d{yyyy-mm-dd}.gz</filenamepattern>
<!-- 保留 30 天的归档日志文件 -->
<maxhistory> 30 </maxhistory>
<!-- 日志文件上限 3g,超过后会删除旧的归档日志文件 -->
<totalsizecap>3gb</totalsizecap>
</rollingpolicy>
<encoder>
<pattern>%-4relative [%thread] %-5level %logger{ 35 } - %msg%n</pattern>
</encoder>
</appender>
|
多环境配置
logback 同样支持多环境配置,如 dev 、 test 、 prod
1
2
3
|
<springprofile name= "dev" >
<logger name= "com.mycompany.myapp" level= "debug" />
</springprofile>
|
启动的时候 java -jar xxx.jar –spring.profiles.active=dev 即可使配置生效。
如果要使用 spring 扩展的 profile 支持,配置文件名必须命名为 logback_spring.xml,此时当 application.properties 中指定为 spring.profiles.active=dev 时,上述配置才会生效。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。
原文链接:https://segmentfault.com/a/1190000018323081
相关文章
- 64M VPS建站:能否支持高流量网站运行? 2025-06-10
- 64M VPS建站:怎样选择合适的域名和SSL证书? 2025-06-10
- 64M VPS建站:怎样优化以提高网站加载速度? 2025-06-10
- 64M VPS建站:是否适合初学者操作和管理? 2025-06-10
- ASP.NET自助建站系统中的用户注册和登录功能定制方法 2025-06-10
- 2025-07-10 怎样使用阿里云的安全工具进行服务器漏洞扫描和修复?
- 2025-07-10 怎样使用命令行工具优化Linux云服务器的Ping性能?
- 2025-07-10 怎样使用Xshell连接华为云服务器,实现高效远程管理?
- 2025-07-10 怎样利用云服务器D盘搭建稳定、高效的网站托管环境?
- 2025-07-10 怎样使用阿里云的安全组功能来增强服务器防火墙的安全性?
快网idc优惠网
QQ交流群
-
2025-06-04 22
-
2025-05-25 40
-
2025-05-29 17
-
2025-05-27 85
-
2025-05-25 71