java Log4j 不打印到文件或标准输出

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/16132424/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-31 22:00:22  来源:igfitidea点击:

Log4j not printing to file or stdout

javafile-iolog4jstdout

提问by TomSelleck

I just downloaded Log4j and am trying to test it out. I copied a sample properties file to print to stdout and a file from herebut it does neither.

我刚刚下载了 Log4j 并正在尝试对其进行测试。我复制了一个示例属性文件以打印到标准输出和来自此处的文件,但两者都没有。

Here is my code:

这是我的代码:

public class ClientTest {
    //static CanvasFrame canvas = new CanvasFrame("Web Cam");

    static Logger logger = Logger.getLogger(ClientTest.class);
    public static void main(String [] args) {

        BasicConfigurator.configure();

        logger.debug("HERPADERP");

        Client bob = new Client("localhost", 6789);
        bob.startRunning();

    }
}

And log4j.properties :

和 log4j.properties :

# Root logger option
log4j.rootLogger=INFO, file, stdout

# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=Log/log.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

The log.log file is created but nothing is ever written to it...

log.log 文件已创建,但没有写入任何内容...

Can anybody spot where I am going wrong?? Thanks !

任何人都可以发现我哪里出错了??谢谢 !

采纳答案by anazimok

Your logger's level is set to INFO. You are using debug statements. Change

您的记录器级别设置为 INFO。您正在使用调试语句。改变

log4j.rootLogger=INFO, file, stdout

log4j.rootLogger=INFO, file, stdout

to

log4j.rootLogger=DEBUG, file, stdout

log4j.rootLogger=DEBUG, file, stdout