Logback日志存放路徑不統(tǒng)一解決方案
問題:
將一個(gè)應(yīng)用程序打成了Jar包后,使用命令運(yùn)行jar包,發(fā)現(xiàn)日志存放的路徑并不統(tǒng)一:
- 比如 hello.jar 包放在 /aaa/bbb 目錄下
- 如果在 /aaa/bbb 目錄下執(zhí)行:java -jar hello.jar ,那么日志就會(huì)存放在 /aaa/bbb 目錄下
- 如果在 /aaa 目錄下執(zhí)行:java -jar bbb/hello.jar ,那么日志就會(huì)存放在 /aaa 目錄下
如何才能不同位置執(zhí)行jar包,但是日志放到一個(gè)統(tǒng)一的目錄中呢?
解決過程:
查看logback.xml中與日志路徑相關(guān)的部分如下:
<timestamp key="bySecond" datePattern="yyyyMMdd'-'HHmmss"/>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>result-${bySecond}.log</file>
<append>true</append>
<encoder>
<pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
</encoder>
</appender>
<file>result-${bySecond}.log</file>指定了存放日志的名稱,是result-yyyyMMdd-HHmmss.log格式
其實(shí)這里也可以指定路徑的,比如:<file>/home/xxx/logs/result-${bySecond}.log</file>
如果能夠把這個(gè)絕對(duì)路徑配置一下就好了,而且是在程序外部,這樣方便了打成jar包以后也能配置
比如:<file>${logback.home}/result-bySecond.log</file>,在外部指定{logback.home}就可以
“隨著通用日志組件轉(zhuǎn)入 Slf4j,logback 也變成了默認(rèn)的日志實(shí)現(xiàn),像 log4j 一樣,logback.xml 中也可以使用系統(tǒng)屬性或環(huán)境變量,如 ${catalina.home}。”
既然logback是可以使用系統(tǒng)屬性的,那就可以使用java -D 配置系統(tǒng)屬性啊
如下:java -Dlogback.home="/home/xxx/logs" -jar hello.jar
問題解決!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java基本數(shù)據(jù)類型(動(dòng)力節(jié)點(diǎn)java學(xué)院整理)
Java數(shù)據(jù)類型(type)可以分為兩大類:基本類型(primitive types)和引用類型(reference types)。下面是動(dòng)力節(jié)點(diǎn)給大家整理java基本數(shù)據(jù)類型相關(guān)知識(shí),感興趣的朋友一起學(xué)習(xí)吧2017-03-03
Java?awt-對(duì)話框簡(jiǎn)單實(shí)現(xiàn)方式
這篇文章主要介紹了Java?awt-對(duì)話框簡(jiǎn)單實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12
Mybatis?Web中的數(shù)據(jù)庫(kù)操作方法舉例詳解
Mybatis是一款優(yōu)秀的持久化框架,用于簡(jiǎn)化JDBC的開發(fā),下面這篇文章主要給大家介紹了關(guān)于Mybatis?Web中數(shù)據(jù)庫(kù)操作方法的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-09-09
Java?MapStruct優(yōu)雅地實(shí)現(xiàn)對(duì)象轉(zhuǎn)換
MapSturct?是一個(gè)生成類型安全,高性能且無依賴的?JavaBean?映射代碼的注解處理器,用它可以輕松實(shí)現(xiàn)對(duì)象轉(zhuǎn)換,下面就來和大家聊聊具體操作吧2023-06-06
SpringBoot項(xiàng)目Maven下載依賴速度慢問題的解決方法
在使用Maven構(gòu)建項(xiàng)目時(shí),有時(shí)會(huì)遇到下載依賴包速度慢的問題,為了提高下載速度,我們可以將默認(rèn)的倉(cāng)庫(kù)地址替換為國(guó)內(nèi)鏡像源,所以本文介紹了SpringBoot項(xiàng)目Maven下載依賴速度慢問題的解決方法,需要的朋友可以參考下2024-08-08
Java正則表達(dá)式學(xué)習(xí)之分組與替換
這篇文章主要給大家介紹了關(guān)于Java正則表達(dá)式學(xué)習(xí)之分組與替換的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09

