SpringBoot加入Log4j2

在尝试将Log4j2集成到SpringBoot应用时遇到了启动错误,提示缺少log4j-web模块。通过在pom.xml中添加log4j-web的依赖解决了该问题。然而,随后又出现了属性绑定错误,原因是applications.yml配置不正确。修正配置后,应用成功运行。

必须承认,对这些我都是一知半解。

依照网上操作,加入Log4j2,

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <!-- 移除框架中的logback依赖 -->
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
    </exclusions>

</dependency>
<!-- log4j2 1.3.x以上版本只支持log4j2 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>

applications.yml文件中添加:

logging:
  config: classpath:log4j2.xml
  level: info

启动报错:

2019-08-08 11:08:23,798 restartedMain INFO Log4j appears to be running in a Servlet environment, but there's no log4j-web module available. If you want better web container support, please add the log4j-web JAR to your web archive or server lib directory.
 


<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-web</artifactId>
    <version>2.11.2</version>
</dependency>
加到pom.xml文件中,问题解决!

 

再次启动,又报错:

[2019-08-08 11:24:43,152][ERROR][restartedMain] Application run failed (SpringApplication.java:821)
org.springframework.boot.context.properties.bind.BindException: Failed to bind properties under 'logging.level' to java.util.Map<java.lang.String, java.lang.String>

原来是applications.yml配置错误,改为

logging:
  config: classpath:log4j2.xml
  level:
    root: info

问题解决!

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值