【发布时间】:2017-09-01 10:01:38
【问题描述】:
我在 glassfish 3.1.2 服务器上运行的 Java EJB 项目中使用 org.slf4j.Logger。
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class main {
private static final Logger LOGGER = LoggerFactory.getLogger(main.class);
public static void main(String[] args) {
LOGGER.info("--- show this everytime");
if(LOGGER.isDebugEnabled()) {
LOGGER.debug("--- show this only if debug is enable");
}
LOGGER.info("--- show this everytime");
}
所以我的问题是,我不知道如何打开/关闭不同的日志级别(信息、调试、错误、跟踪、警告)。我阅读了有关创建配置文件或 xml 文件的信息,但我不知道将这些文件放在 EJB 项目中的哪个位置。 有没有办法像这样配置它?
LOGGER.setLevel("info");
【问题讨论】:
-
我认为没有办法像在您的代码示例中那样调用设置器,因为设置记录器的级别是实现级别的问题,而不是 SLF4J 接口指定的问题。您可能会找到一种使用特定于日志记录实现的代码的方法,但是您的代码取决于日志记录实现,这正是 SLF4J 旨在帮助您避免的。
-
对于在带有 Lombok 的 spring-boot 项目中使用的 slf4j,这对我很有帮助:stackoverflow.com/questions/43901810/…