在 Java 中,Logger 的分级主要是指日志级别(Log Level),用来控制日志的重要程度以及输出粒度。下面从 Java 自带日志(java.util.logging) 和 常用日志框架(Log4j / SLF4J + Logback) 两个方面说明。
ALL < FINEST < FINER < FINE < CONFIG < INFO < WARNING < SEVER < OFF
常用级别说明:
| 级别 | 说明 |
|---|---|
| FINEST | 最详细(调试用) |
| FINER | 较详细 |
| FINE | 调试信息 |
| CONFIG | 配置信息 |
| INFO | 普通运行信息(默认) |
| WARNING | 警告 |
| SEVERE | 严重错误 |
import java.util.logging.*;
public class Demo {
private static final Logger logger = Logger.getLogger(Demo.class.getName());
public static void main(String[] args) {
logger.setLevel(Level.INFO);
logger.info("这是 info 日志");
logger.warning("这是 warning 日志");
logger.severe("这是 severe 日志");
}
}
logger.setLevel(Level.FINE);
或在 logging.properties 中配置:
java.util.logging.ConsoleHandler.level = FINE
TRACE < DEBUG < INFO < WARN < ERROR < FATAL(OFF)
| 级别 | 说明 |
|---|---|
| TRACE | 最细粒度 |
| DEBUG | 调试 |
| INFO | 正常运行 |
| WARN | 潜在问题 |
| ERROR | 错误但不影响系统 |
| FATAL | 致命错误 |
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Demo {
private static final Logger logger = LoggerFactory.getLogger(Demo.class);
public static void main(String[] args) {
logger.debug("debug");
logger.info("info");
logger.warn("warn");
logger.error("error");
}
}
<logger name="com.example" level="DEBUG"/>
<root level="INFO">
<appender-ref ref="CONSOLE"/>
</root>
✅ 控制输出内容
✅ 不同环境不同级别(开发 DEBUG,生产 INFO)
✅ 减少性能开销
DEBUGINFOINFO 或 WARN如果你用的是 具体某个框架(Log4j2 / Logback / Spring Boot),我可以给你更针对性的配置示例。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。