java - 请正确初始化log4j系统警告

标签 java log4j

这是错误信息 -

log4j:WARN No appenders could be found for logger (SerialPortUtil).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

这里是SerialPortUtil类中的调用-

private static final Logger log = Logger.getLogger(SerialPortUtil.class.getSimpleName());
.
.
.
log.info("Serial port " + port.getName() + " is available");

这是我的 log4j.properties 文件的内容 -

log4j.rootLogger=DebugAppender

#Debug logging
log4j.appender.DebugAppender=org.apache.log4j.RollingFileAppender
log4j.appender.DebugAppender.Threshold=DEBUG
log4j.appender.DebugAppender.File=activityLog.log
log4j.appender.DebugAppender.MaxFileSize=200KB
log4j.appender.DebugAppender.MaxBackupIndex=5
log4j.appender.DebugAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.DebugAppender.layout.ConversionPattern=%d{DATE} %t - %m%n

并且属性文件在类路径中。

在我看来一切都是正确的,所以发生了什么事? DEBUG 阈值不应该也捕获 INFO 日志记录吗?

最佳答案

添加代码

BasicConfigurator.configure();

在您的静态主类中,如下所示..

注意: 添加“\hadoop-2.7.1\share\hadoop\common\lib\commons-logging-1.1.3.jar & \hadoop-2.7.1\share\hadoop\common\lib\log4j-1.2.17.jar " 作为外部引用

import org.apache.log4j.BasicConfigurator;

public class ViewCountDriver extends Configured implements Tool{

    public static void main(String[]args) throws Exception{

        BasicConfigurator.configure(); 

        int exitcode = ToolRunner.run(new ViewCountDriver(), args);
        System.exit(exitcode); 
    }
}

关于java - 请正确初始化log4j系统警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8943661/

相关文章:

java - 如何获取android.jar的源代码

Ant:通过 Log4j 进行日志记录

java - 如何在Tomcat中配置另一个log4j配置文件?

Java - 我如何知道 Math.rand() 或 Random 将生成哪个数字?

java - Jasper 报告不显示图像

java - 使用 Log4j 在不同日志中记录不同级别的消息

Spring Boot 和 Log4j 问题

java - 在 JUnit 测试类中哪里配置 log4j?

java - http状态码404 spring mvc

java - 向协约执行调用发送常量参数。