2017-04-14 91 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> 

下面的依赖关系是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

你在项目/ classpath中放置log4j2.xml文件的位置? – Ruben

回答

0

Maven的配置是OK,你可以从离开了<exclusions>部分spring-boot-starter-web依赖关系,将此排除在spring-boot-starter依赖关系就足够了。

log4j2.xml文件正在使用的严格的配置语法,所以你的第一行必须是:

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

你上哪儿去把配置文件?它必须位于类路径的根目录中。

它只是具有log4j2.xml文件的src/main /资源样本春季启动项目测试这和它的工作没有问题。

相关问题