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

标签 java file-io log4j stdout

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

这是我的代码:

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();

    }
}

和 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

log.log 文件已创建,但未向其中写入任何内容...

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

最佳答案

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

log4j.rootLogger=INFO,文件,标准输出

log4j.rootLogger=DEBUG,文件,标准输出

关于java - Log4j 不打印到文件或标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16132424/

相关文章:

c++ - 删除 .. 在 boost filesystem::complete

java - Applet 在 Google Chrome 上挂起

java - 比较两个arraylist的内容,将不匹配的内容存入另一个arraylist

linux - 将 curl REST API 调用重定向到文件不适用于大负载

java - Log4j2 RollingFile 不工作

logging - 如何在 WSO2 ESB 中的每个服务日志中选择主机名

tomcat - 尽管有 log4j.xml,但 Log4J 在 Tomcat 5.5 上以 DEBUG 级别运行

java - 使用 eclipselink 进行 Multi-Tenancy 的正确方法是什么

java - 数组元素困惑

c - 使用 fwrite 将结构体指针写入文件