簡體   English   中英

如何將日志記錄屬性添加到Spring啟動應用程序

[英]How to add logging properties to spring boot application

我正在嘗試將log4j2屬性添加到我的spring啟動應用程序,但是沒有使用給定的日志文件名創建日志文件,並且在運行應用程序時不會拋出任何錯誤。

我沒有向application.properties文件添加任何內容。
下面是添加到我的pom.xml文件的依賴項

<parent>
 <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.2.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
    <start-class>com.boot.test.SpringApp</start-class>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.7</java.version>
</properties>
<dependencies>
 <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-web</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>
 <dependency>
  <groupId>org.apache.logging.log4j</groupId>
  <artifactId>log4j-api</artifactId>
  <version>2.7</version><!--$NO-MVN-MAN-VER$-->
 </dependency>
 <dependency>
  <groupId>org.apache.logging.log4j</groupId>
  <artifactId>log4j-core</artifactId>
  <version>2.7</version><!--$NO-MVN-MAN-VER$-->
 </dependency>
 <dependency>
</dependencies>

下面是log4j2.xml文件

<Configuration status="INFO">
 <Properties>
   <Property name="filename">c:\temp\spring-boot-example.log</Property>
   <Property name="defaultpattern">%d{ISO8601} %thread level=%level %logger{36} %msg%n</Property>
 </Properties>
 <Filter type="ThresholdFilter" level="trace"/>

 <Appenders>
    <Appender type="File" name="File" fileName="${filename}">
        <Layout type="PatternLayout" pattern="${defaultpattern}" />
    </Appender>
 </Appenders>

 <Loggers>
    <Logger name="com.att.sdnmon.odl" level="info" additivity="false">
        <AppenderRef ref="File"/>
    </Logger>
    <Root level="warn">
        <AppenderRef ref="File"/>
    </Root>
 </Loggers>
</Configuration>

你的maven配置沒問題,你可以省去spring-boot-starter-web依賴的<exclusions>部分,把這個排除在spring-boot-starter依賴就足夠了。

log4j2.xml文件中,您使用的是嚴格的配置語法,因此您的第一行必須是:

<Configuration status="info" strict="true">

你把配置文件放在哪里? 它必須位於類路徑的根目錄中。

它剛剛使用一個示例spring boot項目對src / main / resources中的log4j2.xml文件進行了測試 ,並且它沒有問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM