您当前的位置: 首页 >  spring

SpringBoot2 综合案例(02):配置Log4j2,实现不同环境日志打印

蔚1 发布时间:2019-08-29 23:30:50 ,浏览量:4

Spring Boot 2 基础案例篇主要包含以下内容:入门、日志管理、定时器、事务、AOP、数据库、缓存、NoSQL、监控、打包。

Spring Boot 2 高级案例篇主要包含以下内容:

整合常用中间件:分库分表、权限管理、Redis 集群、Dubbo、消息队列、定时器、搜索引擎、文件管理、邮件等

Log4j2日志简介

日志打印是了解Web项目运行的最直接方式,所以在项目开发中是需要首先搭建好的环境。

Log4j2特点

1)核心特点相比与其他的日志系统,log4j2丢数据这种情况少;disruptor技术,在多线程环境下,性能高;并发的特性,减少了死锁的发生。

2)性能测试在这里插入图片描述在这里插入图片描述

日志打印之外观模式

每一种日志框架都有自己单独的API,要使用对应的框架就要使用其对应的API,增加应用程序代码和日志框架的耦合性。《阿里巴巴Java开发手册》,其中有一条规范做了『强制』要求:在这里插入图片描述SLF4JJava简易日志门面(Simple Logging Facade for Java,缩写SLF4J),是一套包装Logging 框架的界面程式,以外观模式实现。

配置日志打印 项目结构

在这里插入图片描述

不同环境的日志配置

使用最直接的方式,不同环境加载不同的日志配置。1)开发环境配置

logging:  config: classpath:log4j2-boot-dev.xml

2)生产环境配置

logging:  config: classpath:log4j2-boot-pro.xml
Log4j2的配置文件
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
测试日志打印 简单的测试程序
import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class Log4j2Controller {    private static final Logger LOGGER = LoggerFactory.getLogger(Log4j2Controller.class);    /**     * 日志级别     * OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL     */    @RequestMapping("/printLog")    public String printLog (){        LOGGER.error("ERROR 级别日志");        LOGGER.warn("WARN 级别日志");        LOGGER.info("INFO 级别日志");        LOGGER.debug("DEBUG 级别日志");        LOGGER.trace("TRACE 级别日志");        return "success" ;    }}
测试效果图

在这里插入图片描述

源代码地址
GitHub 地址:知了一笑https://github.com/cicadasmile/spring-boot-base码云地址:知了一笑https://gitee.com/cicadasmile/spring-boot-base

本文首发于 GitChat,未经授权不得转载,转载需与 GitChat 联系。

阅读全文: http://gitbook.cn/gitchat/activity/5d67c873873fa67c7c05d7d6

您还可以下载 CSDN 旗下精品原创内容社区 GitChat App ,阅读更多 GitChat 专享技术内容哦。

FtooAtPSkEJwnW-9xkCLqSTRpBKX

关注
打赏
1688896170
查看更多评论

蔚1

暂无认证

  • 4浏览

    0关注

    4645博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0815s