up:: SpringBoot电商项目第一次全流程演示
说明:
(1) 本篇博客主要内容:引入log4j2日志组件并配置;
(2) 关于日志,前面介绍过logback日志组件:如有需要可以依次参考;
●【SLF4j和Logback】:第一次引入SLF4日志门面、logback日志实现;(也知道了Mybatis框架中,可以很好的使用logback日志组件)
●【【logger.error()】介绍;(只是将日志打印在Console控制台)】:介绍了logger.error()方法的几种重构形式;
●【Spring编程式事务)】:知道引入logback后,Spring框架就可以默认使用logback来输出日志(此时,还是向控制台输出日志);
●【引入logback日志组件】中接触到了,把日志信息存储到本地的日志文件中;
● 【整合单元测试与日志】(SSM项目整合logback)
1.日志回顾与log4j2日志简介;
● error 一定是发生错误了;比如排除异常时(这是个error级别的错误),那么我们就可以同时打印出error日志;或者连接不上数据库时,也应该打印出error日志;一旦发生了error时,就意味着需要人为介入去排查错误、修复错误的;
● warn 警告日志,一般用的不多;
● info 日志用的比较多;info日志的作用是,留下一些在现在看起来无关痛痒的记录;在将来如果发生了线上问题,当我们去排查线上问题时,那些预埋的info日志可以帮我们;(比如用户的请求和返回信息,就属于info级别)
● debug 日志用的也比较多;我们在程序开发时,debug日志可以帮助我们调试程序;比如,有时我们需要打印一下某个方法的执行时间,而这些信息是不需要以info的级别去记录的(因为那样的话,会引入过多的无用信息),而是使用debug级别去记录这种与开发相关的内容;
● trace 记录的是如针对于某一个变量或者某一段代码进行的临时性的打印;即trace记录的都是一些非常多的、更加繁杂的信息;;;这些信息对于我们来说,不是很有用;;;(更关注trace日志的,是那些框架开发者等)
2. 首先,要排除logback依赖;
● 我们在创建Spring Boot项目的时候,通过【spring-boot-starter-parent】;其就会,自动引入logback这个日志组件;
● 为了要使用log4j2这个日志组件,我们首先要排除logback这个日志组件,否则不同的日志组件会产生冲突;
在spring-boot-starter-web依赖出,设置去排除logback依赖;
设置内容说明:
3.然后,引入log4j2日志组件的依赖;
这是因为,点击【spring-boot-starter-log4j2】,可以看到Spring Boot有对应的版本设置;
4.然后,在resources目录下创建log4j2.xml配置文件,来配置log4j2日志组件;
log4j2.xml:
说明:
(1) 日志存储到本地文件,设置日志存储地址;
● 我们把项目部署到服务器上后,需要有一个特定的文件夹来存放日志文件;【name=“baseDir”】这个自定义目录,对于不同的计算机来说,是不一样的;如果我们的系统是Linux或者Mac系统,那么后面的value就可以设置为【value=”${sys:user.home}/logs”】;【value=”${sys:user.home}/logs”】文件夹需要我们自己手动去建立;
● 对于Linux或者Mac系统来说,这个地址就会对应到自己用户所在的目录;
● 由于自己目前开发时使用的是Windows操作系统;;;而Windows系统的文件描述和Linux系统是不一样的;所以,自己这儿改成了【value=“E:/logs/mallLog”】对应了在自己Windows系统上创建的一个文件夹,以在自己的Windows系统上开发时,也能存储日志;
(2.1) 设置控制台打印日志时,日志的配置项;
(2.2) 设置日志存储到日志文件时,日志的配置项;
声明:除了向控制台打印日志外,我们也需要把日志信息存储到日志文件中;同时,因为我们这儿只把【debug,info,error】级别的日志存储到日志文件中;所以,这儿只配置了【debug,info,error】这三个级别;
(3) 最后,把上面定义的日志配置项,给声明出来;
(4) 补充说明(2022.2.16):日志的滚动存放机制;
关于这点的具体内容,在【补充Log4j2日志文件RollingFile的文件滚动更新机制】中有详细介绍;如有需要,可以去参考;
至此,log4j2日志组件就配置好了;