Logger alog = Logger.getLogger("auditLogger");
alog.debug("to test audit logger in main screen");
显示错误消息,如
log4j:ERROR Could not find value for key log4j.appender.debug
SEVERE: log4j:ERROR Could not instantiate appender named "debug".
SEVERE: log4j:ERROR Could not find value for key log4j.appender.debug
SEVERE: log4j:ERROR Could not instantiate appender named "debug".
log4j.properties
log4j.appender.Customer1audit=org.apache.log4j.RollingFileAppender
log4j.appender.Customer1audit.File=C:\\OpsConsole\\21-05-2013\\IOpsConsole\\logs\\Customer1audit.log
log4j.appender.Customer1audit.MaxFileSize=100KB
log4j.appender.Customer1audit.MaxBackupIndex=1
log4j.appender.Customer1audit.layout=org.apache.log4j.PatternLayout
log4j.logger.customer1auditLogger=info,debug,Customer1audit
答案 0 :(得分:0)
log4j.properties
记录器行的格式为
log4j.logger.loggername=LEVEL,appender1,appender2,...
(一个级别,后跟零个或多个appender名称)所以这一行
log4j.logger.customer1auditLogger=info,debug,Customer1audit
正在配置名为“customer1auditLogger”的记录器以记录级别“info”并将其消息发送到名为“debug”和“Customer1audit”的appender。错误消息告诉您尚未定义名为“debug”的appender。
您需要了解的是,您为记录器指定的日志级别是最小值 - 它将记录此指定级别或任何更高级别的所有消息。因此,您只需将级别设置为调试,您将自动获取信息(以及警告,错误和致命)消息。
log4j.logger.customer1auditLogger=DEBUG,Customer1audit
如果您还有其他appender附加到根记录器,那么您可能还想设置
log4j.additivity.customer1auditLogger=false
阻止customer1auditLogger
消息转到继承的appender以及特定的Customer1audit
appender。
您还需要确保登录到正确的记录器。您的示例属性文件配置了一个名为“customer1auditLogger”的记录器,但您的Java代码确实Logger.getLogger("auditLogger")
- 您需要更改其中一个或另一个,以便它们都匹配。