免费网站站,沈阳网站开发,WordPress无法自动推送,html5模板之家SpringBoot日志配置
1.Spring Boot默认日志框架
Spring Boot默认使用LogBack日志系统#xff0c;如果不需要更改为其他日志系统如Log4j2等#xff0c;则无需多余的配置#xff0c;LogBack默认将日志打印到控制台上。如果要使用LogBack#xff0c;原则上是需要添加depende…SpringBoot日志配置
1.Spring Boot默认日志框架
Spring Boot默认使用LogBack日志系统如果不需要更改为其他日志系统如Log4j2等则无需多余的配置LogBack默认将日志打印到控制台上。如果要使用LogBack原则上是需要添加dependency依赖的 dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-logging/artifactId/dependency但是因为新建的Spring Boot项目一般都会引用spring-boot-starter或者spring-boot-starter-web而这两个起步依赖中都已经包含了对于spring-boot-starter-logging的依赖所以无需额外添加依赖。
2.常用的日志框架
日志门面日志实现JCL、SLF4j、jboss-loggingLog4j、 JULjava.util.logging Log4j2、 Logback
2.1日志门面: 不是具体的日志解决方案,它只服务于各种各样的日志系统允许最终用户在部署其应用时使用其所希望的日志实现来使用日志功能。
2.2日志实现: 是基于对应的日志门面的规范来实现的具体日志功能的框架
2.3 框架之间由于历史迭代原因及框架性能等问题选择的日志框架也不一样常见的框架与默认选择的日志系统关系如下:
框架日志SpringJCLSpringBootSfl4j–logbackHibernate3Slf4j
2.4而框架使用的日志不一样SpringBoot早已考虑这个问题我们看一下它是怎么解决的 可以看到 他把其他的框架日志 偷梁换柱了 都使用的是 slf4j
3. 日志输出级别 以及使用
日志输出级别 TRACE DEBUG INFO WARN ERROR
3.1 Springboot简单的日志使用 方式一
LoggerFactory.getLogger(MyTest8.class);这里面的MyTest8.class是为了方便快速定位是哪一个类输出打印的日志
public class LoggerExec {private static final Logger logger LoggerFactory.getLogger(MyTest8.class);public static void main(String[] args) {logger.trace(trace);logger.debug(debug);logger.info(info);logger.warn(warn);logger.error(error);}}3.2 Springboot简单的日志使用 方式二
导入依赖,并且 你的IDEA要安装了Lombok插件 dependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdoptionaltrue/optional/dependencySif4相当于 private final Logger log LoggerFactory.getLogger(MyTest8.class);
Slf4j
public class MyTest9 extends ParentTest {Testpublic void test1() {log.debug(debug);log.info(info);log.warn(warn);log.error(error);}
}4. 日志打印级别
日志的打印级别 TRACE DEBUG INFO WARN ERROR FATAL 且级别是逐渐提供如果日志级别设置为INFO则意味TRACE和DEBUG级别的日志都看不到。
Spring Boot默认级别就是INFO可通过 logging.level.rootwarn 改变SpringBoot日志打印级别
5.日志的设置
(logging.file文件名,logging.path文件路径已经过时了变成logging.file.name文件路径/文件名)
logging:file:name: F:/springboot.logpattern:#规定输出到控制台的格式console: %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger{15} %msg%n#规定输出到日志文件的格式file: %d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger{15} %msg%n#规定指定包的 日志级别, loggin.level.root是整个项目level:com.example: trace- %d 日期时间 {格式}
- %-5level 左对齐5个字符 日志等级
- %thread 线程名
- %logger{15} 输出日志打印所在的类 限制15个字符