欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺談spring boot 集成 log4j 解決與logback沖突的問題

 更新時間:2020年02月20日 09:14:33   作者:思念是荒蕪的夢  
今天小編就為大家分享一篇淺談spring boot 集成 log4j 解決與logback沖突的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

現(xiàn)在很流行springboot的開發(fā),小編閑來無事也學了學,開發(fā)過程中遇見了log4j日志的一個小小問題,特此記載。

首先在pox.xml中引入對應(yīng)的maven依賴:

    <!-- 引入log4j-->
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-log4j</artifactId>
      <version>1.3.8.RELEASE</version>
    </dependency>

然后在src/resources/下新建log4j.properties文件(摘抄自網(wǎng)上):

log4j.rootLogger=info,error,CONSOLE,DEBUG
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd-HH-mm} [%t] [%c] [%p] - %m%n
log4j.logger.info=info
log4j.appender.info=org.apache.log4j.DailyRollingFileAppender
log4j.appender.info.layout=org.apache.log4j.PatternLayout
log4j.appender.info.layout.ConversionPattern=%d{yyyy-MM-dd-HH-mm} [%t] [%c] [%p] - %m%n
log4j.appender.info.datePattern='.'yyyy-MM-dd
log4j.appender.info.Threshold = info
log4j.appender.info.append=true
log4j.appender.info.File=d://springboot3/logs/api_services_info.log
log4j.logger.error=error
log4j.appender.error=org.apache.log4j.DailyRollingFileAppender
log4j.appender.error.layout=org.apache.log4j.PatternLayout
log4j.appender.error.layout.ConversionPattern=%d{yyyy-MM-dd-HH-mm} [%t] [%c] [%p] - %m%n
log4j.appender.error.datePattern='.'yyyy-MM-dd
log4j.appender.error.Threshold = error
log4j.appender.error.append=true
log4j.appender.error.File=d://springboot3/logs/error/api_services_error.log
log4j.logger.DEBUG=DEBUG
log4j.appender.DEBUG=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DEBUG.layout=org.apache.log4j.PatternLayout
log4j.appender.DEBUG.layout.ConversionPattern=%d{yyyy-MM-dd-HH-mm} [%t] [%c] [%p] - %m%n
log4j.appender.DEBUG.datePattern='.'yyyy-MM-dd
log4j.appender.DEBUG.Threshold = DEBUG
log4j.appender.DEBUG.append=true
log4j.appender.DEBUG.File=d://springboot3/logs/debug/api_services_debug.log

在application.yml中加入如下配置:

logging:
 config: src/main/resources/log4j.properties

至此,log4j的配置完畢,啟動項目,發(fā)現(xiàn)會報錯:

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/Users/tony/.m2/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/Users/tony/.m2/repository/org/slf4j/slf4j-log4j12/1.7.25/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [ch.qos.logback.classic.util.ContextSelectorStaticBinder]
12:02:26.963 [main] DEBUG org.springframework.boot.devtools.settings.DevToolsSettings - Included patterns for restart : []
12:02:26.969 [main] DEBUG org.springframework.boot.devtools.settings.DevToolsSettings - Excluded patterns for restart : [/spring-boot-actuator/target/classes/, /spring-boot-devtools/target/classes/, /spring-boot/target/classes/, /spring-boot-starter-[\w-]+/, /spring-boot-autoconfigure/target/classes/, /spring-boot-starter/target/classes/]
12:02:26.969 [main] DEBUG org.springframework.boot.devtools.restart.ChangeableUrls - Matching URLs for reloading : [file:/F:/work_intel/code/demo1/target/classes/]
Logging system failed to initialize using configuration from 'src/main/resources/log4j.properties'

這是因為與logback的沖突并未解決,導致啟動失敗,根據(jù)上面的報錯信息,找到logback-classic-1.2.3.jar和slf4j-log4j12-1.7.25.jar的相應(yīng)位置刪除,并在pom.xml中加入如下排除代碼:

   <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
      <!-- 排除默認的logback日志,使用log4j-->
      <exclusions>
        <exclusion>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.slf4j</groupId>
          <artifactId>slf4j-log4j12</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

啟動發(fā)現(xiàn)一切正常,至此,log4j的配置完畢。

以上這篇淺談spring boot 集成 log4j 解決與logback沖突的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python Parser的用法

    Python Parser的用法

    這篇文章主要介紹了Python Parser的用法,文中有非常詳細的代碼示例,對正在學習python的小伙伴們有很好地幫助,需要的朋友可以參考下
    2021-05-05
  • pytorch版本PSEnet訓練并部署方式

    pytorch版本PSEnet訓練并部署方式

    這篇文章主要介紹了pytorch版本PSEnet訓練并部署方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Python基于均值漂移算法和分水嶺算法實現(xiàn)圖像分割

    Python基于均值漂移算法和分水嶺算法實現(xiàn)圖像分割

    圖像分割是將圖像分成若干具有獨特性質(zhì)的區(qū)域并提取感興趣目標的技術(shù)和過程。這篇文章將詳細講解基于均值漂移算法和分水嶺算法的圖像分割,需要的可以參考一下
    2023-01-01
  • Python實現(xiàn)byte轉(zhuǎn)integer

    Python實現(xiàn)byte轉(zhuǎn)integer

    這篇文章主要介紹了Python實現(xiàn)byte轉(zhuǎn)integer操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Python如何執(zhí)行系統(tǒng)命令

    Python如何執(zhí)行系統(tǒng)命令

    這篇文章主要介紹了Python如何執(zhí)行系統(tǒng)命令,幫助大家更好的利用python操作系統(tǒng),感興趣的朋友可以了解下
    2020-09-09
  • Python OpenCV簡單的繪圖函數(shù)使用教程

    Python OpenCV簡單的繪圖函數(shù)使用教程

    本文主要為大家介紹了OpenCV中一些簡單的繪圖函數(shù)的使用教程,文中的示例代碼講解詳細,對我們了解OpenCV有一定的幫助,感興趣的可以學習一下
    2022-01-01
  • 利用Python求解阿基米德分牛問題

    利用Python求解阿基米德分牛問題

    這篇文章主要為大家詳細介紹了如何利用Python優(yōu)雅地求解阿基米德分牛問題,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起了解一下
    2023-03-03
  • Python中關(guān)于面向?qū)ο笾欣^承的詳細講解

    Python中關(guān)于面向?qū)ο笾欣^承的詳細講解

    面向?qū)ο缶幊?(OOP) 語言的一個主要功能就是“繼承”。繼承是指這樣一種能力:它可以使用現(xiàn)有類的所有功能,并在無需重新編寫原來的類的情況下對這些功能進行擴展
    2021-10-10
  • 通過python將大量文件按修改時間分類的方法

    通過python將大量文件按修改時間分類的方法

    今天小編就為大家分享一篇通過python將大量文件按修改時間分類的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • python如何求數(shù)組連續(xù)最大和的示例代碼

    python如何求數(shù)組連續(xù)最大和的示例代碼

    這篇文章主要介紹了python如何求數(shù)組連續(xù)最大和的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-02-02

最新評論