java - Log4j 具有不同记录器和一个属性文件的多个类

标签 java log4j

我有两个类(class)AB。我想使用根目录中的单个 log4j.properties 将 A 类记录到 a.log,将 B 类记录到 b.log,到目前为止我的努力:

在A类中:

private static final Logger l = Logger.getLogger("classa");

B类:

private static final Logger l = Logger.getLogger("classb");

log4j.属性:

log4j.logger.classa=ALL,A1
log4j.appender.A1=org.apache.log4j.RollingFileAppender
log4j.appender.A1.append=false
log4j.appender.A1.MaxBackupIndex=1
log4j.appender.A1.file=a.log
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

log4j.logger.classb=ALL,A2
log4j.appender.A2=org.apache.log4j.RollingFileAppender
log4j.appender.A2.append=false
log4j.appender.A2.MaxBackupIndex=1
log4j.appender.A2.file=b.log
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

有什么想法吗?

最佳答案

这有效!

通过类名检索:

private static final Logger l = Logger.getLogger(MyClass.class.getName());

两个类名记录器:

log4j.logger.my.package.MyClassA=Debug,A1
log4j.logger.my.package.MyClassB=Debug,A2

关于java - Log4j 具有不同记录器和一个属性文件的多个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16733242/

相关文章:

java - com.google.gms.google-services 未添加类 GoogleSignInOptions

java - 在Install4j中,如何修复 'The JVM could not be started'错误?

java - Log4j2 看不到配置 xml

java - TOMCAT 7,干净,干净的工作目录

java - 什么更好? MyPojo.getList().add(Object) 还是 MyPojo.add()?

java - JMS 性能和 RemoteTCPConnection.receive

java - 动态创建和销毁日志附加程序

java - 从库代码记录到应用程序日志的策略?

java - 错误 StatusLogger 无法识别格式说明符

java服务包装器父进程挂起