[英]Trouble getting log4j to output to file
我使用Maven配置文件构建了一个jar,并希望将log4j输出重定向到文件。
这是我的log4j.properties文件:
# Root logger option
log4j.rootLogger=DEBUG, file
# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=./reporting.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
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
这是我从bash运行的命令:
java -jar -Dlog4j.configuration=~/log4j.properties myjar.jar
尽管如此,所有日志记录输出都将输出到stdout。 有什么建议么?
编辑:
尝试过:
这些都没有奏效-我的想法不多了。
假设log4j.properties
位于/user/home
run
java -cp /user/home:. -jar myjar.jar
log4j.properties
。 -Dlog4j.configuration
指定的文件也需要在您的classpath中 。 因此,如果您的属性文件是/user/home/temp-log4j.properties
则可以运行
java -cp /user/home:. -Dlog4j.configuration=temp-log4j.properties -jar myjar.jar
我使用这种配置,也许这种配置可以为您提供帮助,我认为您的问题与路径有关,请尝试使用完整路径,例如FILE.file属性中的一个,这是绝对路径
log4j.rootLogger = DEBUG, FILE
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.File=/home/mtataje/logs/repo.log
log4j.appender.FILE.Threshold=debug
log4j.appender.FILE.Append=true
log4j.appender.FILE.MaxFileSize=1MB
log4j.appender.FILE..MaxBackupIndex=2
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n
希望它能对您有所帮助,最好的问候。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.