最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring Boot使用Log4j2的實(shí)例代碼

 更新時(shí)間:2017年07月30日 16:55:11   作者:OrangeJoke  
這篇文章主要介紹了Spring Boot使用Log4j2的實(shí)例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

前言

Spring Boot 默認(rèn)使用Logback,來打印日志,這里還想說的SLFJ(Simple Logging Facade for Java),它們之間的關(guān)系,一張圖,說明一切:

maven 配置

<!--use log4j2 property-->
    <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-log4j2</artifactId>
    </dependency>

    <!--flume log4j appender-->
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-flume-ng</artifactId>
      <version>2.6</version>
    </dependency>

log4j2.xml 配置

Log4j2 提供非常豐富的Appender,比如CassandraAppender,AsyncAppender,我們這里配置了簡(jiǎn)單的Flume Appnder,Failover Appender.

<?xml version="1.0" encoding="UTF-8"?>
<Configuration monitorInterval="60">
  <Properties>
    <Property name="source">api-web</Property>
    <Property name="log-pattern">%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{userId}] [%t] [%-5level] %c{1.}@%M%L - %m%n</Property>
    <!--get product dynamic property-->
  </Properties>
  <Appenders>

    <RollingFile name="RollingFile" fileName="logs/app.log"
           filePattern="logs/$${date:yyyy-MM}/app-%d{MM-dd-yyyy}-%i.log.gz">
      <PatternLayout>
        <Pattern>${log-pattern}</Pattern>
      </PatternLayout>
      <Policies>
        <TimeBasedTriggeringPolicy />
        <SizeBasedTriggeringPolicy size="250 MB"/>
      </Policies>
    </RollingFile>

    <Flume name="eventLogger" compress="false" type="avro" ignoreExceptions="false">
      <Agent host="192.168.31.115" port="4444"/>
      <Agent host="127.0.0.1" port="4444"/>
      <PatternLayout>
        <pattern>
          <pattern>${log-pattern}</pattern>
        </pattern>
      </PatternLayout>
    </Flume>

    <Console name="Console-Appender" target="SYSTEM_OUT" ignoreExceptions="false">
      <PatternLayout>
        <pattern>${log-pattern}</pattern>
      </PatternLayout>
    </Console>

    <!-- 主要Apeender失敗的時(shí)候使用備用Appender-->
    <Failover name="Failover" primary="eventLogger">
      <Failovers>
        <AppenderRef ref="RollingFile"/>
      </Failovers>
    </Failover>
  </Appenders>
  <Loggers>
    <!--在需要同時(shí)打印文件和發(fā)送至flume的時(shí)候使用-->
    <!--<Logger name="" level="info" additivity="false">-->
      <!--<AppenderRef ref="RollingFile"/>-->
    <!--</Logger>-->
    <Root level="info">
      <AppenderRef ref="Console-Appender"/>
      <AppenderRef ref="Failover"/>
    </Root>
  </Loggers>
</Configuration>

總結(jié)

如果遇到識(shí)別不了log4j2.properties/xml,可以在application.properties,中指定 logging.config=classpath:log4j2.properties/xml

參考

https://springframework.guru/introducing-log4j-enterprise-class-logging/

http://logging.apache.org/log4j/2.x/manual/appenders.html#RollingFileAppender

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家

相關(guān)文章

  • IDEA教程創(chuàng)建SpringBoot前后端分離項(xiàng)目示例圖解

    IDEA教程創(chuàng)建SpringBoot前后端分離項(xiàng)目示例圖解

    在使用spring、mybatis等框架時(shí),配置文件很復(fù)雜,有時(shí)復(fù)雜的讓人想放棄Java,使用C#。springboot出現(xiàn)這一切問題就都不是問題
    2021-10-10
  • SpringMVC中處理Http請(qǐng)求的原理詳解

    SpringMVC中處理Http請(qǐng)求的原理詳解

    這篇文章主要介紹了SpringMVC中處理Http請(qǐng)求的原理詳解,當(dāng)一個(gè)http請(qǐng)求過來了首先經(jīng)過的是DispatcherServlet這么一個(gè)前端控制器并調(diào)用了這個(gè)前端控制器的doService方法,這個(gè)方法最終我們發(fā)現(xiàn)它調(diào)用了doDispatcher這么一個(gè)方法,需要的朋友可以參考下
    2023-12-12
  • Java多線程 原子性操作類的使用

    Java多線程 原子性操作類的使用

    這篇文章主要介紹了Java多線程 原子性操作類的使用,在java5以后,我們接觸到了線程原子性操作,也就是在修改時(shí)我們只需要保證它的那個(gè)瞬間是安全的即可,經(jīng)過相應(yīng)的包裝后可以再處理對(duì)象的并發(fā)修改,本文總結(jié)一下Atomic系列的類的使用方法,下面一起進(jìn)入文章了解詳細(xì)內(nèi)容
    2021-10-10
  • java編程中字節(jié)流轉(zhuǎn)換成字符流的實(shí)現(xiàn)方法

    java編程中字節(jié)流轉(zhuǎn)換成字符流的實(shí)現(xiàn)方法

    下面小編就為大家?guī)硪黄猨ava編程中字節(jié)流轉(zhuǎn)換成字符流的實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-01-01
  • 詳解mybatis-plus配置找不到Mapper接口路徑的坑

    詳解mybatis-plus配置找不到Mapper接口路徑的坑

    這篇文章主要介紹了詳解mybatis-plus配置找不到Mapper接口路徑的坑,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • 一文吃透 Spring 中的 AOP 編程

    一文吃透 Spring 中的 AOP 編程

    這篇文章主要介紹了springboot中的AOP編程,本文介紹的非常詳細(xì),有一定的參考價(jià)值,感興趣的小伙伴可以借鑒一下
    2023-04-04
  • Java JDK8新增Optional工具類講解

    Java JDK8新增Optional工具類講解

    這篇文章主要介紹了Java JDK8新增Optional工具類講解,本文通過老版和jdk8對(duì)比對(duì)null的處理方式,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • Spring之借助Redis設(shè)計(jì)一個(gè)簡(jiǎn)單訪問計(jì)數(shù)器的示例

    Spring之借助Redis設(shè)計(jì)一個(gè)簡(jiǎn)單訪問計(jì)數(shù)器的示例

    本篇文章主要介紹了Spring之借助Redis設(shè)計(jì)一個(gè)簡(jiǎn)單訪問計(jì)數(shù)器的示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-06-06
  • Java如何實(shí)現(xiàn)登錄token令牌

    Java如何實(shí)現(xiàn)登錄token令牌

    這篇文章主要介紹了Java如何實(shí)現(xiàn)登錄token令牌,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • 淺談Java安全之C3P0的使用

    淺談Java安全之C3P0的使用

    本文主要介紹了淺談Java安全之C3P0的使用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01

最新評(píng)論

曲阜市| 壤塘县| 盐源县| 漠河县| 万年县| 盐亭县| 万全县| 瓦房店市| 招远市| 新郑市| 华阴市| 措勤县| 青神县| 华蓥市| 湘乡市| 巴林右旗| 灵台县| 喀喇沁旗| 延寿县| 通州区| 普格县| 济阳县| 东丰县| 曲松县| 夏津县| 虞城县| 常德市| 鹿泉市| 洛宁县| 酉阳| 舟曲县| 温泉县| 达州市| 稷山县| 大渡口区| 抚顺县| 万宁市| 日照市| 牡丹江市| 康马县| 太谷县|