Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Spring Boot中配置日志框架?_Java_Spring_Log4j_Spring Boot - Fatal编程技术网

Java 如何在Spring Boot中配置日志框架?

Java 如何在Spring Boot中配置日志框架?,java,spring,log4j,spring-boot,Java,Spring,Log4j,Spring Boot,我如何告诉Spring Boot使用哪个日志框架?(我想使用log4j2) 在1.1.9.RELEASE中,我的类路径中有一个log4j2.xml,日志工作正常 现在我升级到spring-boot-1.2.0.RELEASE,我的记录器不再工作了!也许我必须将日志框架配置为显式使用 我正在使用org.apache.logging.log4j.LogManager.getRootLogger()进行日志记录,可能这是错误的?请参阅文档: 只需更换POM <dependency>

我如何告诉
Spring Boot
使用哪个日志框架?(我想使用log4j2)

在1.1.9.RELEASE中,我的类路径中有一个
log4j2.xml
,日志工作正常

现在我升级到spring-boot-1.2.0.RELEASE,我的记录器不再工作了!也许我必须将日志框架配置为显式使用

我正在使用
org.apache.logging.log4j.LogManager.getRootLogger()
进行日志记录,可能这是错误的?

请参阅文档:

只需更换POM

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<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-log4j2</artifactId>
</dependency>

org.springframework.boot
SpringBootStarterWeb
org.springframework.boot
弹簧靴起动器
org.springframework.boot
spring启动程序日志记录
org.springframework.boot
spring-boot-starter-log4j2

您应该使用SFL4J,它是围绕实际使用的日志实现的抽象级别。如果您如上所述配置POM,并在src/main/resources中包含适当的log4j配置,并使用org.slf4j.Logger进行日志记录,那么您应该很好

Hm,这仍然没有帮助。我使用的是
org.apache.logging.log4j.LogManager.getRootLogger()
logger对象。也许这不合适?将spring boot与log4j2一起使用时,哪个类是eg
log.info()
的正确类?为什么不尝试使用
org.slf4j.LoggerFactory.getLogger(类)
?我认为它应该是spring Boot的一个依赖项,即slf4j jars,因为我想使用log4j2 explicit来启用异步日志记录。@membersound我会尝试
Logger.getLogger(“perfLog”)