Java 日志系统

2019-08-22  本文已影响0人  希希里之海

Java 日志系统

1. 创建日志记录器

private final Logger logger = LoggerFactory.getLogger(LoggerTest.class);

2. 打印日志信息

// 跟踪轨迹,记录跟踪代码运行过程种的信息
logger.trace("这是 trace 日志");
// 调试信息
logger.debug("这是 debug 日志");
// 自定义的一些信息
logger.info("这是 info 日志");
// 警告信息(比如方法返回值不是预期的,可以使用该日志打印输出警告信息)
logger.warn("这是 warn 日志");
// 错误信息
logger.error("这是 error 日志");

3. 日志的级别

由高到底:

trace < debug < info < warn < error

可以调整输出日志的级别,日志就只会在这个级别以以后的高级别生效。

日志打印参数

日志打印参数要使用占位符。
举个栗子:

log.info("这是一个参数 [{}]", params);

如果参数是对象,要将器转为字符串类型再打印出来。
举个栗子:

log.info("这是一个对象 [{}]", ToStringBuilder.reflectionToString(refuseClassQuestionTO);

注意:不要使用拼接符,如

log.ingo("这是一个参数" + params);

这种方式虽然不会报错,但是是不规范的(不能指定参数位置)。

使用注解

在上面的例子中,我们每创建一个新类,要使用日志框架,就需要重新创建日志记录器:

private final Logger logger = LoggerFactory.getLogger(yourClass.class);

未免太过繁琐。
可以使用注解方法来避免重复创建日志记录器的方式。

  1. 依赖(该注解是通过 lombok 来实现的,需要导入 lombok 依赖:
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
</dependency>
  1. 只需要在类前加上 @Slf4j,便能使用如下格式输出日志:
log.info("这是一个 info 日志");

注意:该注解也是 lombok 功能的一部分,需要先安装 lombok 插件和 lombok 依赖。

上一篇下一篇

猜你喜欢

热点阅读