我試圖使用Log4j寫入我的文件系統中的本地日誌文件。log4J在Spring Boot中沒有寫入特定的日誌文件Microservice
實際上使用了不同項目中的確切屬性文件,只是更改了頂級目錄的名稱以匹配我的應用程序的名稱。不同的項目寫入logs.log文件,但是這根本不打印任何內容。這兩個項目都使用相同版本的log4j。
的pom.xml
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
在我的基於Unix的MacOS,我cd'ed到在/ var /日誌/並做了以下內容:所有
sudo mkdir myapp
chmod 777 myapp
有內部MYAPP,以下設置過的地方:
if (log.isDebugEnabled() {
log.debug("print something");
}
的myapp/src目錄/主/資源/ log4j.properties:
log4j.rootCategory=DEBUG, RF
log4j.category.your.category.name=DEBUG
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%-5p [%F]: %m [%d{ISO8601}]%n
log4j.logger.com.amazonaws=DEBUG RF
log4j.appender.RF=org.apache.log4j.RollingFileAppender
log4j.appender.RF.File=/var/log/myapp/logs.log
log4j.appender.RF.MaxFileSize=10MB
log4j.appender.RF.MaxBackupIndex=30
log4j.appender.RF.layout=org.apache.log4j.PatternLayout
log4j.appender.RF.layout.ConversionPattern=[%d{ISO8601}]%5p%6.6r[%t]%x(%F:%L) - %m%n
Threshold=DEBUG
不爲什麼裏面明白:
/var/log/myapp/
有沒有存在logs.log文件!
現在用這一個春天引導1.5.4.RELEASE裏面我建立使用它:
mvn clean install
然後運行使用兩種:
java -jar myapp.jar
或
mvn spring-boot:run
會如果有人能夠提供給我一個更好的屬性文件,或者看看我做錯了什麼,我會感激嗎?
感謝您花時間閱讀本文。
您必須排除spring引導日誌記錄(默認logback)以允許log4j日誌記錄。請參閱此處[如何排除](https://docs.spring.io/spring-boot/docs/current/reference/html/howto-logging.html#howto-configure-log4j-for-logging) – Veeram