2017-04-14 8 views
1

私は春の起動アプリケーションにlog4j2プロパティを追加しようとしていますが、ログファイルが指定されたログファイル名で作成されず、アプリケーションの実行中にエラーがスローされません。バネ起動アプリケーションにログプロパティを追加する方法

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> 

を追加されたあなたのMavenの設定はOKです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> 
+0

プロジェクト/クラスパスのどこに 'log4j2.xml'ファイルを置きますか? – Ruben

答えて

0

である、あなたはから<exclusions>一部を残すことができますスプリングバックスターターウェブ依存性、この除外をスプリングブートスターター依存で十分です。あなたが設定ファイルを入れている

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

:あなたの最初の行でなければなりませんので、あなたは、厳格な設定構文を使用しているlog4j2.xmlファイルで

?クラスパスのルートになければなりません。

それはちょうどのsrc /メイン/リソースlog4j2.xmlファイルを有するサンプル春ブーツプロジェクトでこれをテストし、それが問題なく働きました。

関連する問題