使用logback日志文件多環(huán)境配置路徑方式
logback日志文件多環(huán)境配置路徑
項(xiàng)目中遇到問題,springboot項(xiàng)目 本地jar包部署到現(xiàn)場(chǎng)后,經(jīng)常遇到現(xiàn)場(chǎng)的日志存放的路徑會(huì)更改,經(jīng)過查閱,有兩種方式,下面簡單說明一下。
一、第一種 啟動(dòng)jar包時(shí) 添加參數(shù)
--logging.config=F:\hgtest\config\logback.xml,采用指定的日志配置文件。
start javaw -jar F:\hgtest\hg.jar --spring.config.location=F:\hgtest\config\ --logging.config=F:\hgtest\config\logback.xml
二、多環(huán)境配置日志存放的路徑
啟動(dòng)jar會(huì)根據(jù)spring.profiles.active的值來判斷取哪個(gè)日志路徑保存日志。
1、添加依賴,方便使用<springProperty> 標(biāo)簽
<!-- Logback Classic Module -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version> <!-- 使用適合的版本號(hào) -->
</dependency>2、修改logback-spring.xml文件配置
備注:
- logback.xml 和 logback-spring.xml的區(qū)別
- logback和logback-spring.xml都可以用來配置logback,但是兩者的加載順序是不一樣的。
- logback.xml—>application.properties—>logback-spring.xml.
- 所以 有變量配置在了 application.properties 如果logback.xml進(jìn)行取值就會(huì)取值不到,所以建議在Springboot中 盡量使用 logback-spring.xml。
3、logback-spring.xml修改 增加路徑變量讀取
<!-- 日志存放路徑 -->
<springProperty scope="context" name="log.path" source="logging.file.path" defaultValue="./logs" />
<!-- 系統(tǒng)日志輸出 -->
<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.path}/sys-info.log</file>
<!-- 循環(huán)政策:基于時(shí)間創(chuàng)建日志文件 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 日志文件名格式 -->
<fileNamePattern>${log.path}/sys-info.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- 日志最大的歷史 15天 -->
<maxHistory>15</maxHistory>
</rollingPolicy>
<encoder>
<pattern>${log.pattern}</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<!-- 過濾的級(jí)別 -->
<level>INFO</level>
<!-- 匹配時(shí)的操作:接收(記錄) -->
<onMatch>ACCEPT</onMatch>
<!-- 不匹配時(shí)的操作:拒絕(不記錄) -->
<onMismatch>DENY</onMismatch>
</filter>
</appender>這里配置了springProperty 用于從 application.properties 中獲取文件地址,并且配置了默認(rèn)地址。
name:logback-spring.xml中可以使用的變量,對(duì)應(yīng)下面引用的變量值。source:來自 application.properties中配置的變量defaultValue:獲取不到 application.properties中配置的變量時(shí) 默認(rèn)的值,(這里建議直接配置生產(chǎn)環(huán)境的位置)
這樣配置后,即可把log日志保存到指定的目錄下。親測(cè)可用。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
IDEA上面搭建一個(gè)SpringBoot的web-mvc項(xiàng)目遇到的問題
這篇文章主要介紹了IDEA上面搭建一個(gè)SpringBoot的web-mvc項(xiàng)目遇到的問題小結(jié),需要的朋友可以參考下2017-04-04
關(guān)于Poi讀取Excel引發(fā)內(nèi)存溢出問題的解決方法
這篇文章主要給大家介紹了關(guān)于Poi讀取Excel引發(fā)內(nèi)存溢出問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08
Java詳解實(shí)現(xiàn)多線程的四種方式總結(jié)
哈哈!經(jīng)過一個(gè)階段的學(xué)習(xí),Java基礎(chǔ)知識(shí)學(xué)習(xí)終于到多線程了!Java多線程以及后面互斥鎖的概念都是Java基礎(chǔ)學(xué)習(xí)的難點(diǎn),所以我做了一個(gè)總結(jié),希望對(duì)大家也有幫助2022-07-07
基于SpringBoot和Leaflet的行政區(qū)劃地圖掩膜效果實(shí)戰(zhàn)教程
本文講解的是一種圖層級(jí)的掩膜,即使用行政區(qū)劃圖層來進(jìn)行掩膜,使用場(chǎng)景為,用戶只需要在地圖頁面中展示目標(biāo)行政區(qū)劃內(nèi)的影像信息,對(duì)于行政邊界外的影像,這篇文章主要介紹了基于SpringBoot和Leaflet的行政區(qū)劃地圖掩膜效果實(shí)戰(zhàn),需要的朋友可以參考下2024-05-05
基于JavaMail的Java實(shí)現(xiàn)簡單郵件發(fā)送功能
這篇文章主要為大家詳細(xì)介紹了基于JavaMail的Java實(shí)現(xiàn)簡單郵件發(fā)送功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-09-09
IDEA調(diào)試功能使用總結(jié)(step?over/step?into/force?step?into/step?o
本文主要介紹了IDEA調(diào)試功能使用總結(jié)(step?over/step?into/force?step?into/step?out),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07

