log4j2.xml配置,導致啟動報錯


項目中遇到問題,當使用tomcat啟動時,沒問題;當使用內置tomcat啟動時卻報錯,找不到日志路徑。

變量位置:

<properties>
<property name="LOG_HOME">${sys:catalina.base}/logs</property>
<property name="PATTERN">%-5level^|%d{ISO8601}^|app-service^|%msg%n
</property>
<property name="CONSOLE_PATTERN">%d{HH:mm:ss,SSS} %-5level %m%n
</property>
</properties>

catalina.base是tomcat的變量,當使用外置的tomcat會在catalina.bat或者catalina.sh中初始化這個變量,表示tomcat的基礎路徑,而內置tomcat沒有初始化這個變量,通過查看官網文檔,找到兩個解決的辦法:

1.可以在eclipse的啟動選項中添加變量,如下圖

2.可以為該變量增加默認值,表達式為${Prefix:propertiesname:-defaultValue}用:-表示后邊的是默認值,將${sys:catalina.base}改為${sys:catalina.base:-d:}(這里用d盤做日志目錄)

相關文檔參見log4j2官方文檔:

https://logging.apache.org/log4j/2.x/manual/configuration.html#XML


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM