@Test
public void test03(){
/*
通过Logger中的开关
打开日志输出的详细信息
查看LogManager类中的方法
getLoggerRepository()
找到代码LogLog.debug(msg, ex);
LogLog会使用debug级别的输出为我们展现日志输出详细信息
Logger是记录系统的日志,那么LogLog是用来记录Logger的日志
进入到LogLog.debug(msg, ex);方法中
通过代码:if (debugEnabled && !quietMode) {
观察到if判断中的这两个开关都必须开启才行
!quietMode是已经启动的状态,不需要我们去管
debugEnabled默认是关闭的
所以我们只需要设置debugEnabled为true就可以了
*/
LogLog.setInternalDebugging(true);
Logger logger = Logger.getLogger(Log4jTest01.class);
logger.fatal("fatal信息");
logger.error("error信息");
logger.warn("warn信息");
logger.info("info信息");
logger.debug("debug信息");
logger.trace("trace信息");
}
public static LoggerRepository getLoggerRepository() {
if (repositorySelector == null) {
repositorySelector = new DefaultRepositorySelector(new NOPLoggerRepository());
guard = null;
Exception ex = new IllegalStateException("Class invariant violation");
String msg = "log4j called after unloading, see http://logging.apache.org/log4j/1.2/faq.html#unload.";
if (isLikelySafeScenario(ex)) {
LogLog.debug(msg, ex);
} else {
LogLog.error(msg, ex);
}
}
return repositorySelector.getLoggerRepository();
}
public static void debug(String msg, Throwable t) {
if (debugEnabled && !quietMode) {
System.out.println("log4j: " + msg);
if (t != null) {
t.printStackTrace(System.out);
}
}
}