java - Log4j 自定义附加程序未调用

标签 java logging log4j

我正在使用 Log4J 1.2.17,并尝试创建自己的附加程序。 我扩展了 AppenderSkeleton,实现了重写方法并在 Log4j.properties 中声明了我的附加程序 - 但附加程序从未被调用。我错过了什么?

我的附加程序的片段:

@Override
public void close() {       
}

@Override
public boolean requiresLayout() {
    return false;
}

@Override
protected void append(LoggingEvent event) {
    System.out.println("append !"); // Debug
    appendMessageToSystemLog(event.getMessage().toString()); // Test    
}

以及我的 Log4j 属性:

log4j.rootLogger=INFO, test

### Test ###
log4j.appender.test=util.EventLogger
log4j.appender.test.threshold=INFO
log4j.appender.test.layout=org.apache.log4j.PatternLayout

最佳答案

我发现了我的问题:我的附加程序有一个私有(private)构造函数...其中一个星期一...

关于java - Log4j 自定义附加程序未调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38562347/

相关文章:

java - 它在 Eclipse 中运行正常但无法作为 .jar 文件运行

java - Log4j 不将日志写入数据库

java - 标签内的按钮和图标 - SquareIcon

java - Android 多播只能使用 255.255.255.255 地址

objective-c - 迁移到 iOS 9 后“无效上下文 0x0”

python-2.7 - 断言已使用特定字符串调用了日志记录

tomcat - 如何为每个 tomcat 服务器实例编写唯一的日志文件?

tomcat - Sysout 会影响 tomcat 性能吗?

java - ArrayIndexOutOfBoundsException 对不断增长的 arrayList 进行排序

tomcat - 为什么library jar会在tomcat catalina.out中写入日志?