log4j 日志级别 level 作者:马育民 • 2021-11-28 22:41 • 阅读:10088 # 说明 官方网址: http://logging.apache.org/log4j/1.2/ 用来定义日志的级别,值可以是: - OFF(关闭) - FATAL(致命的) - **ERROR:**输出错误信息;表示虽然发生错误,但不影响系统继续运行 - **WARN:**输出警告信息;表明会出现潜在错误 - **INFO:**输出提示信息;粗粒度事件,显示应用程序的运行过程 - **DEBUG:**输出调试信息;细粒度事件,对调试应用程序非常有帮助 - TRACE:跟踪日志,日志消息的粒度太细,很低的日志级别,一般不会使用 - ALL(所有) 输出日志的策略由 Level 决定 > 粗体表示常用 ### 优先级 ``` OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL ``` ### 常用日志级别 从上到下的日志级别: ``` ERROR WARN INFO DEBUG ``` 有时会提到 `INFO` **以上**,就表示 `WARN` 和 `ERROR` 级别的日志 有时会提到 `WARN` **以上**,就表示 `ERROR` 级别的日志 ### 范围 按照范围 **从小到大** 排序:`ERROR < WARN < INFO < DEBUG` 范围大的会 **包含范围小的**,例如: 日志设置为 `INFO` ,那么 `ERROR、WARN、INFO` 的日志是开启的,而 `DEBUG` 的日志是关闭的 # 配置 如果logger的Level设置为 `INFO`,那么只输出 `INFO` 以上的日志(`WARN`、`ERROR`) ### 没有指定 level 如果当前 logger 没有设定 `Level`,那么它在输出日志时采用的策略是:会使用 **继承的Logger** 的 `Level` 作为它自己的 `Level` 来处理。 如果它的上级也没有设置 `Level`,那么就 **找上上级**,依次类推,直到 `root` 为止 > root 的 Level 是不能设为空的,所以最终一定会找到一个Level 默认 `root` 的 `Level` 是 `INFO` 其他 logger 的 Level 默认都是`null`,需要手动指定。 # JAVA代码 Level 对应的 java代码的方法: ``` logger.debug(message);//对应debug级别 logger.info(message);//对应info级别 logger.warn(message);//对应warn级别 logger.error(message);//对应error级别 ``` 其他: ``` logger.fatal(message);//对应fatal级别 ``` 原文出处:http://malaoshi.top/show_1IX2JNRVMqe6.html