SpringBoot2中如何使用log4j2日志框架

SpringBoot2中如何使用log4j2日志框架,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

成都网站设计、网站建设的关注点不是能为您做些什么网站,而是怎么做网站,有没有做好网站,给成都创新互联公司一个展示的机会来证明自己,这并不会花费您太多时间,或许会给您带来新的灵感和惊喜。面向用户友好,注重用户体验,一切以用户为中心。

排除Logback依赖

Spring Boot 2.x默认使用Logback日志框架,要使用 Log4j2必须先排除 Logback。

 org.springframework.boot  spring-boot-starter                org.springframework.boot      spring-boot-starter-logging      

引入Log4j2依赖

 org.springframework.boot  spring-boot-starter-log4j2

上面的 log4j2 已经适配了slf4j日志门面,所以我们的代码无需替换,只需要替换具体的日志框架以及对应的配置文件。

配置Log4j2

创建log4j2.xml文件,放在工程resources目录里。这样就可以不加任何配置。如果你需要指定配置文件需要在Spring boot 配置文件application.yml中指定 logging.config 属性。下面是一份比较详细的 log4j2 配置文件 :

                                                                                                                                                                                                                                                             

基本上你拿上面的配置根据你自己的需要更改一下即可生效。 windows 下 ${sys:user.home} 会将日志打印到用户目录下

调用Logger输出日志

下面的示例代码使用了神器lombok中的@Slf4j 注解可以很方便的使用 org.slf4j.Logger 对象。日常开发尽量使用Slf4j门面来处理日志,尽量避免使用具体的日志框架。

package cn.felord.spring.security;import lombok.extern.slf4j.Slf4j;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import java.time.LocalDate;import java.util.Properties;/** * @author dax * @since 2019/10/9 0:03 */@Slf4j@RestController@RequestMapping("/logging")public class LogController {  @GetMapping("/do")  public String log() {    log.info("log4j2 test date: {} info: {}", LocalDate.now(), "请关注公众号:Felordcn");     return "log4j2";  }  }

看完上述内容,你们掌握SpringBoot2中如何使用log4j2日志框架的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


当前名称:SpringBoot2中如何使用log4j2日志框架
分享链接:http://scyanting.com/article/gpjjie.html