java - log4j 不记录文件

标签 java logging log4j2

我正在使用 log4j 记录到控制台和文件。它仅适用于控制台,但不适用于文件,认为正在创建文件

这是我的配置文件:

name=PropertiesConfig
property.filename = logs
appenders = console, file

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 

appender.file.type = File
appender.file.name = LOGFILE
appender.file.fileName=${filename}/my_server_logs.log
appender.file.layout.type=PatternLayout
appender.file.layout.pattern=[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n

loggers=file
logger.file.name=guru.springframework.blog.log4j2properties
logger.file.level = debug
logger.file.appenderRefs = file
logger.file.appenderRef.file.ref = LOGFILE

rootLogger.level = debug
rootLogger.appenderRefs = file, stdout
rootLogger.appenderRef.stdout.ref = STDOUT

请问我缺少什么?

最佳答案

文件追加器和根记录器之间的连接丢失。 在属性文件底部添加以下行:

rootLogger.appenderRef.file.ref = LOGFILE

它将按预期工作。

关于java - log4j 不记录文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43779258/

相关文章:

java - Log4j2:向每个记录行添加特定字符串

java - log4j2 基于命令行参数的动态文件名

java - 运行时 Spring : How to manage datasources created with BeanFactoryPostProcessor,?

c# - 如何将我自己的属性添加到 Serilog 输出模板

mysql - 运行一个分析网站....1 重插入 vs 几个轻选择和插入

python - 对齐不同级别的日志消息

log4j2 无限滚动文件

Java Unordered() 函数

java - 用 Java 呈现此设计的好的布局是什么?

java - JAXB 注释 RootElement