我将log4j的依赖项放在pom.xml文件中:
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.10.0</version>
</dependency>
编写了以下log4j.properties文件:
log4j.rootLogger = INFO,stdout,console 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
并将此文件放在'resources'文件夹下。
最后,我把环境变量LOG4J_log4j.configurationFile = log4j.properties
但是,当我运行我的应用程序时,行:
logger.info("Hello");
不会向控制台写任何内容。 你知道可能是什么问题吗?
答案 0 :(得分:3)
您使用的是log4j2,您的属性文件名应为log4j2.properties
。你可以像下面这样配置它。您不必放置任何环境变量。
appenders = console
appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n
rootLogger.level = debug
rootLogger.appenderRefs = stdout
rootLogger.appenderRef.stdout.ref = STDOUT
source = https://springframework.guru/log4j-2-configuration-using-properties-file/
答案 1 :(得分:1)
我建议您首先从一个工作示例开始,然后逐步添加您自己配置的细节。然后你会看到它在哪里破碎。
在上面的代码中,我看到了以下潜在问题:
-Dlog4j.configuration=file:log4j.properties
。