我正在使用 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/