我的一位大四学生告诉我,编写两个级别的日志语句debug
和info
是错误的,这种方法有什么问题?
if(LOGGER.isDebugEnabled()){
LOGGER.info("REST SERVICE LOG :QUERY GENERATED FOR ADVANCED SEARCH IS : \n" +queryBuffer );
}
if(LOGGER.isEnabledFor(Level.INFO)){
LOGGER.info("REST SERVICE LOG :QUERY GENERATED FOR ADVANCED SEARCH IS : \n" +queryBuffer );
}
对此有任何建议吗?
答案 0 :(得分:1)
在您的示例中:(假设您的LOGGER正在使用标准java日志框架之一)
如果为TRACE或DEBUG配置了LOGGER,则会记录两次相同的信息。
"REST SERVICE LOG :QUERY GENERATED FOR ADVANCED SEARCH IS :
<query buffer>"
"REST SERVICE LOG :QUERY GENERATED FOR ADVANCED SEARCH IS :
<query buffer>"
这似乎很浪费。
如果为INFO配置了LOGGER,则会记录一次信息。
"REST SERVICE LOG :QUERY GENERATED FOR ADVANCED SEARCH IS :
<query buffer>"
如果LOGGER配置为ERROR或FATAL等级别,则不会记录任何信息。
您在这里登录的目标是什么?