传统中,我们使用slf4j打印日志方式是:
// 先定义Logger对象 private static final Logger logger = LoggerFactory.getLogger(ObjectClass.class); // 然后在业务中使用 ...logger.info(); ...logger.error();这种方式每次使用都需要在相应的业务处理类定义。在以SpringBoot搭建的项目中,可以 使用lombok来作为日志控制的工具
1.安装lombok插件(IDEA)
在IDEA插件管理中,搜索lombok,安装lombok plugins插件
2.引入lombok依赖
在pom.xml文件中加入lombok依赖
<!--lombok依赖--> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>3.使用
在类方法中加入@Slf4j注解,然后可以直接在业务方法中使用log
package com.kingdom.vbdemo.common.config; import com.kingdom.vbdemo.common.entity.ReturnEntity; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RestControllerAdvice; /** * <p>Package:com.kingdom.vbdemo.common.config</p> * <p>Title: GlobalDeafultExceptionHandler</p> * <p>Description: 全局的异常捕捉</p> * * @author Kingdom.Chen * @datetime 2018/10/23 14:42 */ @Slf4j @RestControllerAdvice public class GlobalDeafultExceptionHandler { /** * 异常捕捉 * @param e * @return */ @ExceptionHandler(Exception.class) public ReturnEntity exceptionHandler(Exception e) { log.error("系统异常: " + e.getMessage()); e.printStackTrace(); return ReturnEntity.fail(); } }彩色控制台显示
<!-- 彩色日志 --> <!-- 彩色日志依赖的渲染类 --> <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" /> <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" /> <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" /> <!-- 彩色日志格式 --> <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>