2016-07-16 63 views
0

我不明白爲什麼我的Log4J不記錄到文件。我一直在尋找許多類似的帖子,但沒有人幫助我。我配置了所有正確的,但它不記錄到文件。記錄器不寫入文件Log4J

讓我告訴你,這是配置log4J.properties:

# Root logger option 
log4j.rootLogger=INFO, file, stdout 

# Direct log messages to a log file 
log4j.appender.file=org.apache.log4j.RollingFileAppender 
log4j.appender.file.File=log.out 
log4j.appender.file.ImmediateFlush=true 
log4j.appender.file.MaxFileSize=1024MB 
log4j.appender.file.MaxBackupIndex=1 
log4j.appender.file.Append=true 
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 

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 

這就是我如何使用記錄儀:

import org.slf4j.Logger; 
import org.slf4j.LoggerFactory; 

... 

private Logger logger = LoggerFactory.getLogger(GameBoardService.class); 


... 

logger.info("log this text into file...."); 
+0

您是否檢查過您的log4j.properties文件是否正確拾取? –

+0

您是否嘗試提供完整路徑的文件,如C:/log.out? –

+0

您是否已將'log4j-slf4j-impl.jar'文件添加到類路徑中?哦,對不起,您正在使用舊的* Log4j 1.2。你是否將'slf4j-log4j12.jar'文件添加到類路徑中? – Andreas

回答

0

嘗試指定您的基本軟件包日誌

log4j.logger.[your own class base package ]=INFO 

eg

log4j.logger.org.springframework=WARN 
log4j.logger.org.hibernate=WARN 

具體的日誌路徑使您能夠輕鬆找到路徑,例如,下面。

log4j.appender.file.File=/var/logs/log.out 

此外,/var/logs/log.out在Windows創建爲C:\ VAR \日誌\ log.out和Linux作爲/var/logs/log.out並且沒有必要根據操作系統切換路徑斜槓。只是提醒一下,確保你有權限到指定的路徑。