0

我在使用 Maven 构建和 Jetty 作为 Web 服务器来使用我的 Web 应用程序进行日志记录时遇到问题。我的 log4j.proporties 文件如下所示:

#
log4j.rootLogger=debug,file
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=C:/logs/Stats.log
log4j.appender.file.MaxFileSize=2MB
log4j.appender.file.MaxBackupIndex=2
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d %t [%5p][%c{1}] %m%n

#log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
#log4j.appender.CONSOLE.threshold=INFO
#log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
#log4j.appender.CONSOLE.layout.ConversionPattern=%d %t [%5p][%c{1}] %m%n
#log4j.appender.CONSOLE.target=System.err

# RTS file logger
log4j.appender.RTS=org.apache.log4j.RollingFileAppender
log4j.appender.RTS.File=C:/logs/RTS.log
log4j.appender.RTS.MaxBackupIndex=10
log4j.appender.RTS.MaxFileSize=10MB
log4j.appender.RTS.append=true
log4j.appender.RTS.layout=org.apache.log4j.PatternLayout
log4j.appender.RTS.layout.ConversionPattern=%d [%t] %-m%n

# Level tuning
#log4j.logger.org.cometd=INFO
log4j.logger.com.realtime=INFO, RTS

我的主要课程看起来像:

import org.apache.log4j.Logger;

public class Main {

    static final Logger logger = Logger.getLogger(Main.class);

    public static void main(String[] args) {
        logger.info("Info Message!");
            ...
            ...
    }
}

有谁知道为什么我没有收到“信息消息!” 出现在我的 RTS.log 文件中?文件被创建,但在应用程序运行时为空。我的主要课程目前在包 com.realtime

4

1 回答 1

0

是的,棘手的一个。这篇文章描述了如何使用该additivity设置来防止由于我在评论中的建议而将相同的包记录到不同的日志文件中。所以像这样的事情......

log4j.additivity.com.cometd=false
log4j.additivity.com.realtime=false

log4j.logger.com.cometd.file=DEBUG, file
log4j.logger.com.realtime.RTS=DEBUG, RTS
于 2013-02-06T17:25:17.280 回答