SLF4J 和 Apache Commons Logging 在 Spring Boot 中的使用
JCL 级别 | Logback 级别 | 说明 |
---|---|---|
trace | TRACE | 最详细的调试信息 |
debug | DEBUG | 调试信息 |
info | INFO | 一般信息 |
warn | WARN | 警告信息 |
error | ERROR | 错误信息 |
fatal | ERROR | 严重错误(JCL 中与 error 通常相同) |
Spring Boot 自动配置了 SLF4J + Logback,无需额外配置:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@RestController
public class MyController {
private static final Logger logger = LoggerFactory.getLogger(MyController.class);
@GetMapping("/example")
public String example() {
logger.trace("Trace message");
logger.debug("Debug message");
logger.info("Info message");
logger.warn("Warn message");
logger.error("Error message");
return "Hello World";
}
}
Apache Commons Logging
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@RestController
public class MyController {
// 获取日志实例
private static final Log logger = LogFactory.getLog(MyController.class);
@GetMapping("/demo")
public String demo() {
// 日志级别从低到高
logger.trace("This is a TRACE level message");
logger.debug("This is a DEBUG level message");
logger.info("This is an INFO level message");
logger.warn("This is a WARN level message");
logger.error("This is an ERROR level message");
logger.fatal("This is a FATAL level message");
return "JCL demo";
}
}