gpt4 book ai didi

java - 如何向 Spring Boot 应用程序添加日志记录属性

转载 作者:太空宇宙 更新时间:2023-11-04 11:34:39 24 4
gpt4 key购买 nike

我正在尝试将 log4j2 属性添加到我的 Spring Boot 应用程序中,但没有使用给定的日志文件名创建日志文件,并且运行应用程序时不会引发任何错误。

我没有添加任何内容到 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配置没问题,你可以省略<exclusions>部分来自 spring-boot-starter-web 依赖项,将此排除项放入 spring-boot-starter 依赖项中就足够了。

log4j2.xml 文件中,您使用严格的配置语法,因此第一行必须是:

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

你把配置文件放在哪里了?它必须位于类路径的根目录中。

它刚刚使用一个示例 Spring Boot 项目对此进行了测试,该项目在 src/main/resources 中具有 log4j2.xml 文件,并且它运行没有问题。

关于java - 如何向 Spring Boot 应用程序添加日志记录属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43418608/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com