springboot項(xiàng)目中添加自定義日志及配置過程
當(dāng)前項(xiàng)目使用的springboot為 2.2.2.release
。低版本的話logging下的子標(biāo)簽有可能不是這樣的。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.2.2.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency>
或
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.2.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent>
application.yml文件中的配置
logging: # config: classpath:logback.xml level: #logging.level.root=info就是默認(rèn)的情況 # root: info #logging.level設(shè)置日志級別,后面跟生效的區(qū)域,比如root表示整個項(xiàng)目,也可以設(shè)置為某個包下,也可以具體到某個類名(日志級別的值不區(qū)分大小寫) root: warn cn.com.yuanquanyun: debug file: max-size: 10MB max-history: 7 path: logs name: ${logging.file.path}/myapp.log #指定日志的格式(springboot也自帶默認(rèn)的格式) pattern: # console: "%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger : %msg%n" #指的是打印到控制臺的日志格式 console: "%red(%d{yyyy-MM-dd HH:mm:.SSS}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{50}) - %cyan(%msg%n)" #指的是打印到控制臺的日志格式--帶顏色 file: "%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger : %msg%n" #指的是存儲到日志文件里的的日志格式
對上述的配置進(jìn)行說明:
logger.level.root:info #表示整個項(xiàng)目的日志輸出級別為Info,也就是日志級別比Info高的日志都輸出,也是默認(rèn)的。 logger.level.root:warn #一般改為warn基本 logger.level.cn.com.yuanquanyun: debug #也可以指定某個包下的日志級別。尤其是打印sql語句時,需要debug級別才能看到。這樣項(xiàng)目的其他地方的日志是warn級別。這個指定包的日志級別為debug級別。 %d: 表示日期格式 默認(rèn)為:yyyy-MM-dd HH:mm:ss,SSS, 可以通過%d{yyyy-MM-dd HH:mm:ss.SSS} 或 %d{yyyy-MM-dd HH:mm:ss} 來指定格式,一般來說最好用默認(rèn)的精確到毫秒級 %-5level:級別從左顯示5個字符寬度 , %thread: 表示線程名, %logger: 表示當(dāng)前調(diào)log.info()打印日志的對象的類的權(quán)限定名 %msg:日志消息,%n是換行符 max-size: #當(dāng)日志文件的內(nèi)容達(dá)到指定大小時,會執(zhí)行回滾策略,將文件壓縮歸檔為日志文件名.log.yyyy-MM-dd.i.gz,再生成一個新的zhyd-app.log空文件繼續(xù)收集新日志。不能保證壓縮前的日志文件完全是指定的大小,因?yàn)樾枰WC日志完整性,不能斷行。一般都會略大于指定的大小. max-history: #歷史歸檔文件保留7天,超過7天的,會自動刪除 path: #生成的日志文件所在的目錄 name: #指定生成的日志文件的名稱,如果沒有指定,則使用默認(rèn)的:spring.log #config: classpath:logback.xml #也可以這里引入xml文件。不把日志的配置寫到application.yml,而是寫到另外一個文件中。這樣避免yml文件太臃腫。
到此這篇關(guān)于springboot項(xiàng)目中添加自定義日志的文章就介紹到這了,更多相關(guān)springboot添加自定義日志內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)超詳細(xì)教程
這篇文章主要介紹了一個簡單的Java學(xué)生信息管理系統(tǒng),使用ArrayList集合存儲學(xué)生對象信息,并實(shí)現(xiàn)了添加、刪除、修改和查看學(xué)生信息的功能,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-01-01詳解IDEA下Gradle多模塊(項(xiàng)目)的構(gòu)建
這篇文章主要介紹了詳解IDEA下Gradle多模塊(項(xiàng)目)的構(gòu)建,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-01-01Spring解決循環(huán)依賴問題的三種方法小結(jié)
在 Spring 中,循環(huán)依賴問題指的是兩個或多個 bean 之間相互依賴形成的閉環(huán),具體而言,當(dāng) bean A 依賴于 bean B,同時 bean B 也依賴于 bean A,就形成了循環(huán)依賴,本文就給大家介紹了Spring解決循環(huán)依賴問題的三種方法,需要的朋友可以參考下2023-09-09Java ConcurrentHashMap鎖分段機(jī)制使用及代碼實(shí)例
ConcurrentHashMap是Java中的一種線程安全的哈希表,通過鎖分段機(jī)制提高了并發(fā)性能,在Java 8中,ConcurrentHashMap引入了CAS操作和更復(fù)雜的節(jié)點(diǎn)繼承結(jié)構(gòu),進(jìn)一步優(yōu)化了并發(fā)操作2025-01-01springboot實(shí)現(xiàn)攔截器的3種方式及異步執(zhí)行的思考
實(shí)際項(xiàng)目中,我們經(jīng)常需要輸出請求參數(shù),響應(yīng)結(jié)果,方法耗時,統(tǒng)一的權(quán)限校驗(yàn)等。本文首先為大家介紹 HTTP 請求中三種常見的攔截實(shí)現(xiàn),并且比較一下其中的差異。感興趣的可以了解一下2021-07-07Linux系統(tǒng)Docker拉取JDK21鏡像超細(xì)詳解
這篇文章主要介紹了如何在Linux系統(tǒng)上使用Docker拉取JDK21鏡像,并基于該鏡像搭建開發(fā)和測試環(huán)境,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-12-12Java中實(shí)現(xiàn)文件上傳下載的三種解決方案(推薦)
這篇文章主要介紹了Java中實(shí)現(xiàn)文件上傳下載的三種解決方案的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-07-07