首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PropertyConfigurator for Log4j不再存在了吗?

PropertyConfigurator for Log4j不再存在了吗?
EN

Stack Overflow用户
提问于 2018-05-09 14:13:38
回答 2查看 10.3K关注 0票数 0

我只在控制台上看到这个:

13:08:18.379主要错误log4.prueba -这是错误 13:08:18.381主要致命性log4.prueba -这是致命的

我没有得到一个文件或所有其他级别。我做错什么了?我的目录如下所示:

projectFolder/src/log4 4/prueba.java projectFolder/src/log4j.properties

守则:

代码语言:javascript
复制
package log4;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

public class prueba {

     private static Logger logger = LogManager.getLogger(prueba.class);
     public static void main( String[] args )
     {
          logger.debug("This is Debug");
          logger.info("This is Info");
          logger.warn("This is Warn");
          logger.error("This is Error");
          logger.fatal("This is Fatal");
     }

 }

属性文件如下所示:

代码语言:javascript
复制
# Root logger option
log4j.rootLogger=DEBUG, file, stdout

# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C:\\logging.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
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
EN

回答 2

Stack Overflow用户

发布于 2018-05-11 11:02:23

Log4j 2还支持属性文件中的配置,但请注意:

  • 该文件需要被称为log4j2.properties
  • 配置语法不同于Log4j 1.2语法(问题中的配置使用旧的Log4j 1.2语法,Log4j 2将不理解这一点)

Log4j 2用户手册主要有XML示例,因此许多人发现使用语法更容易。(同样,配置文件应该命名为log4j2.xml,Log4j 2将忽略log4j.xml。)

票数 1
EN

Stack Overflow用户

发布于 2018-05-11 11:33:42

定义log4j属性文件

@ prueba.java

代码语言:javascript
复制
import org.apache.log4j.Logger;

public class prueba {

    private static Logger LOGGER = Logger.getLogger(prueba.class);

    public static void main(String[] args) {
        LOGGER.debug("This is Debug");
        ...
    }
}

@ pom.xml

代码语言:javascript
复制
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>RELEASE</version>
        <scope>compile</scope>
    </dependency>

src/resources/log4j.properties

代码语言:javascript
复制
# Root logger option
log4j.rootLogger=DEBUG, file, stdout
# 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
# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=log/log4j-application.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
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

输出到stdoutlog/log4j-application.log文件

代码语言:javascript
复制
2018-05-11 14:29:43 DEBUG prueba:8 - This is Debug
2018-05-11 14:29:43 INFO  prueba:9 - This is Info
2018-05-11 14:29:43 WARN  prueba:10 - This is Warn
2018-05-11 14:29:43 ERROR prueba:11 - This is Error
2018-05-11 14:29:43 FATAL prueba:12 - This is Fatal
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50255593

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档