Java 获取当前类/bean的日志级别
从我的类登录时,我使用以下方法:Java 获取当前类/bean的日志级别,java,logging,jakarta-ee,apache-commons,java.util.logging,Java,Logging,Jakarta Ee,Apache Commons,Java.util.logging,从我的类登录时,我使用以下方法: import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; ... private static Log log = LogFactory.getLog(MyClass.class); ... log.debug("..."); 我注意到,无论应用何种日志级别,所有日志语句都将始终执行。我不希望在不需要调试相关语句时执行它(这里的性能是一个问题
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
...
private static Log log = LogFactory.getLog(MyClass.class);
...
log.debug("...");
我注意到,无论应用何种日志级别,所有日志语句都将始终执行。我不希望在不需要调试相关语句时执行它(这里的性能是一个问题)
所以我在寻找这样的东西:
if (LogLevel == debug) {
log.debug("...");
...
}
如何获取该类使用的当前日志级别?用作日志框架的日志外观,因为它通过使用改进的性能解决了您提到的问题
如果您想要更快的日志框架,请使用。commons日志包中的每个日志实例都可以告诉您是否启用了特定级别。使用此代码:
if ( log.isDebugEnabled() )
{
// Debug log statements
}
查看以了解更多信息。谢谢,这正是我想要的。我不确定我怎么会在API中漏掉它。我同意,我更喜欢参数化日志而不是逻辑检查。