亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

在Spring Boot中如何使用log4j記錄日志

 更新時間:2017年02月09日 09:37:01   作者:橘子不酸  
這篇文章主要介紹如何在spring boot中引入log4j,以及一些基礎(chǔ)用法,需要的朋友可以參考借鑒,下面來一起看看吧。

前言

Spring Boot在所有內(nèi)部日志中使用Commons Logging,但是默認(rèn)配置也提供了對常用日志的支持,如:Java Util Logging,Log4J, Log4J2和Logback。每種Logger都可以通過配置使用控制臺或者文件輸出日志內(nèi)容。本文主要介紹了在Spring Boot中如何使用log4j記錄日志,感興趣的來一起學(xué)習(xí)學(xué)習(xí)。

引入log4j依賴

在創(chuàng)建Spring Boot工程時,我們引入了spring-boot-starter,其中包含了spring-boot-starter-logging,該依賴內(nèi)容就是
Spring Boot默認(rèn)的日志框架Logback,所以我們在引入log4j之前,需要先排除該包的依賴,再引入log4j的依賴,就像下面這樣:

<dependency> 
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter</artifactId>
 <exclusions>
 <exclusion> 
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-logging</artifactId>
 </exclusion>
 </exclusions>
</dependency>
<dependency> 
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-log4j</artifactId>
</dependency>

配置log4j.properties

在引入了log4j依賴之后,只需要在src/main/resources目錄下加入log4j.properties配置文件,就可以開始對應(yīng)用的日志進(jìn)行配置使用。

控制臺輸出

通過如下配置,設(shè)定root日志的輸出級別為INFO,appender為控制臺輸出stdout

# LOG4J配置
log4j.rootCategory=INFO, stdout
# 控制臺輸出
 log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
 log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

輸出到文件

在開發(fā)環(huán)境,我們只是輸出到控制臺沒有問題,但是到了生產(chǎn)或測試環(huán)境,或許持久化日志內(nèi)容,方便追溯問題原因。
可以通過添加如下的appender內(nèi)容,按天輸出到不同的文件中去,同時還需要為log4j.rootCategory添加名為file的appender,
這樣root日志就可以輸出到logs/all.log文件中了。

#
log4j.rootCategory=INFO, stdout, file
# root日志輸出
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.file.file=logs/all.log 
log4j.appender.file.DatePattern='.'yyyy-MM-dd 
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

分類輸出

1.可以按不同package進(jìn)行輸出。通過定義輸出到logs/my.log的appender,并對com.didispace包下的日志級別設(shè)定
為DEBUG級別、appender設(shè)置為輸出到logs/my.log的名為didifile的appender。

# com.juzi包下的日志配置
log4j.category.com.juzi=DEBUG, didifile
# com.didispace下的日志輸出
log4j.appender.didifile=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.didifile.file=logs/my.log 
log4j.appender.didifile.DatePattern='.'yyyy-MM-dd 
log4j.appender.didifile.layout=org.apache.log4j.PatternLayout 
log4j.appender.didifile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L ---- %m%n

可以對不同級別進(jìn)行分類,比如對ERROR級別輸出到特定的日志文件中,具體配置可以如下。

og4j.logger.error=errorfile 
# error日志輸出
log4j.appender.errorfile=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.errorfile.file=logs/error.log 
log4j.appender.errorfile.DatePattern='.'yyyy-MM-dd 
log4j.appender.errorfile.Threshold = ERROR 
log4j.appender.errorfile.layout=org.apache.log4j.PatternLayout 
log4j.appender.errorfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

相關(guān)文章

  • Springboot配置全局跨域未生效,訪問接口報(bào)錯問題及解決

    Springboot配置全局跨域未生效,訪問接口報(bào)錯問題及解決

    這篇文章主要介紹了Springboot配置全局跨域未生效,訪問接口報(bào)錯問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • SpringBoot模擬員工數(shù)據(jù)庫并實(shí)現(xiàn)增刪改查操作

    SpringBoot模擬員工數(shù)據(jù)庫并實(shí)現(xiàn)增刪改查操作

    這篇文章主要給大家介紹了關(guān)于SpringBoot模擬員工數(shù)據(jù)庫并實(shí)現(xiàn)增刪改查操作的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2021-09-09
  • Spring Security 實(shí)現(xiàn)用戶名密碼登錄流程源碼詳解

    Spring Security 實(shí)現(xiàn)用戶名密碼登錄流程源碼詳解

    在服務(wù)端的安全管理使用了Spring Security,用戶登錄成功之后,Spring Security幫你把用戶信息保存在Session里,但是具體保存在哪里,要是不深究你可能就不知道,今天小編就帶大家具體了解一下Spring Security實(shí)現(xiàn)用戶名密碼登錄的流程
    2021-11-11
  • SpringBoot Maven升級自帶的jar包版本問題

    SpringBoot Maven升級自帶的jar包版本問題

    這篇文章主要介紹了SpringBoot Maven升級自帶的jar包版本問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • 分析Java中ArrayList與LinkedList列表結(jié)構(gòu)的源碼

    分析Java中ArrayList與LinkedList列表結(jié)構(gòu)的源碼

    這篇文章主要介紹了Java中ArrayList與LinkedList列表結(jié)構(gòu)的源碼,文章最后對LinkedList和ArrayList以及Vector的特性有一個對比總結(jié),需要的朋友可以參考下
    2016-05-05
  • Windows下Java調(diào)用OCR進(jìn)行圖片識別

    Windows下Java調(diào)用OCR進(jìn)行圖片識別

    這篇文章主要為大家詳細(xì)介紹了Windows下Java調(diào)用OCR進(jìn)行圖片識別,通過Tesseract-OCR對圖片進(jìn)行識別,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • java中DateUtils時間工具類詳解

    java中DateUtils時間工具類詳解

    這篇文章主要為大家詳細(xì)介紹了java中DateUtils時間工具類,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • Druid基本配置及內(nèi)置監(jiān)控使用_動力節(jié)點(diǎn)Java學(xué)院整理

    Druid基本配置及內(nèi)置監(jiān)控使用_動力節(jié)點(diǎn)Java學(xué)院整理

    這篇文章主要介紹了Druid基本配置及內(nèi)置監(jiān)控使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • MyBatis中如何優(yōu)雅的使用枚舉詳解

    MyBatis中如何優(yōu)雅的使用枚舉詳解

    枚舉類型是我們在開發(fā)中經(jīng)常遇到的一個類型,最近在學(xué)習(xí)MyBatis,但是發(fā)現(xiàn)網(wǎng)上沒有詳細(xì)介紹MyBatis如何使用枚舉的相關(guān)文章,索性就自己寫一篇,下面這篇文章主要給大家介紹了關(guān)于在MyBatis中如何優(yōu)雅的使用枚舉的相關(guān)資料,需要的朋友可以參考借鑒。
    2017-08-08
  • Java集合框架中迭代器Iterator解析

    Java集合框架中迭代器Iterator解析

    這篇文章主要為大家簡單介紹了Java集合框架中迭代器Iterator的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03

最新評論