Springboot 日志配置
程序员文章站
2022-06-13 15:26:16
...
1.市面上主要的入职框架:
- 日志框架抽象层(日志门面) SLF4J 推荐
- 日志实现:推荐使用 log4j和logback出自同一人,但是log4j有些性能问题 所以推荐使用logback,而log4j2只是使用了log4j的名字,没有任何关系,出自阿帕奇公司,因为太完美了,还没有做到适配各种框架。所以使用LOgback
2.各种框架统一日志
- 1、将系统中其他日志框架先排除出去;
- 用中间包来替换原有的日志框架
- 我们导入slf4j其他的实现
**
3.springboot已经帮我们配置好了,只需要排除其他日志框架 不需要做任何配置
其实这些中间包就是和其他日志框架实现的方法是一样的,只不过内部的日志生成是通过对应日志框架的门面。
4.slf4j的用法:
5.修改日志的配置:
logging.path:配置日志的路径 默认名字为spring.log
- logging.path=/spring/log 则在当前项目的根目录下面 spring/log/spring.log
- ogging.path=/ 直接在根目录下面名字为spring.log
logging.file:日志名字以及路径配置
- logging.file=springboot.log 在当前工程目录下面 名字为springboot.log
- logging.file=/spring.log 在当前工程根目录下面 名字为spring.log
所以如果想要在工程下面使用file,如果想改名字也用file,感觉path能做的file都能做,所以个人认为failed更好
格式
6.自定义日志配置
- 如果类路径下面日志配置文件名字为logback.xml,则直接被日至框架识别
- 如果类路径下面日志配置文件名字为logback-spring.xml,则由SpringBoot解析日志配置,可以使用SpringBoo的高级Profile功能
3.springboot官方文档支持的日志配置文件名字
例如:logback-spring。.xml可以使用springProfile功能
7.切换springboot日志
1.springboot默认日志框架是slf4j+logback,如果想要切换为log4j日志框架,就需要把logback的依赖去掉,然后加上log4j的依赖就可以了,log4j还需要一个log4j.properties的文件。切换为log4j是不现实的,因为logback是log4j的升级版。
例:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐starter‐web</artifactId>
<exclusions>
<exclusion>
<artifactId>logback‐classic</artifactId>
<groupId>ch.qos.logback</groupId>
</exclusion>
<exclusion>
<artifactId>log4j‐over‐slf4j</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j‐log4j12</artifactId>
</dependency>
2.切换为log4j2日志框架,①排除掉spring-logging.start的依赖,然后加上log4j2的启动就可以了。
切换为log4j2:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐starter‐web</artifactId>
<exclusions>
<exclusion>
<artifactId>spring‐boot‐starter‐logging</artifactId> <groupId>org.springframework.boot</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐starter‐log4j2</artifactId>
</dependency>
上一篇: 光棍节逗笑车屁股经典