1. 程式人生 > >springboot的maven專案整合log4j

springboot的maven專案整合log4j

我的專案使用的是springboot的1.4.1的版本,在1.4以上的版本中,需要整合log4j2,用log4j的話會報錯

過程如下:

1、  由於springboot本身已經集成了日誌相關的log4j或slf4j依賴,我們需要在pom.xml中先去掉這些依賴,再新增log4j2的依賴:

<!--去掉springboot本身日誌依賴-->

      <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>

      <!--log4j2-->

      <dependency>

          <groupId>org.springframework.boot</groupId>

          <artifactId>spring-boot-starter-log4j2</artifactId>

      </dependency>

2、  新增 log4j2.xml檔案(與 application.properties 同一個包下),內容如下:

<?xml version="1.0" encoding="UTF-8"?>

<!--啟動項設定為 trace,載入 springboot 啟動內部各種詳細輸出-->

<Configuration status="trace">

    <Appenders>

        <!--新增一個控制檯追加器-->

        <Console name="Console" target="SYSTEM_OUT" follow="true">

            <PatternLayout>

                <pattern>[%-5p] %d %c - %m%n</pattern>

            </PatternLayout>

        </Console>

        <!--新增一個文字追加器,檔案位於根目錄下,名為log.log-->

        <File name="File" fileName="log.log">

            <PatternLayout>

                <pattern>[%-5p] %d %c - %m%n</pattern>

            </PatternLayout>

        </File>

    </Appenders>

    <Loggers>

        <Logger name="com.github" level="debug" />

        <!--記錄 qg.fangrui.boot 包及其子包 debug 及其以上的記錄,並輸出到檔案中-->

        <Logger name="qg.fangrui.boot" level="debug">

            <!-- AppenderRef 可以控制檔案輸出物件-->

            <AppenderRef ref="File" />

        </Logger>

        <!--根記錄全部輸出到控制檯上-->

        <Root level="debug">

            <AppenderRef ref="Console" />

        </Root>

    </Loggers>

</Configuration>

3、  在application.properties 中加入配置檔案的掃描位置

logging.config=classpath:log4j2.xml。。

至此,新增log4j2完成,啟動專案和請求路徑都會看到控制檯列印的日誌檔案