zoukankan      html  css  js  c++  java
  • SpringBoot集成log4j,解决log4j.properties不生效问题

    Spring Boot集成log4j其实比较简单,maven的话,在xml中增加log4j依赖就行

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j</artifactId>
    <version>1.3.8.RELEASE</version>
    </dependency>

    然后配置log4j.properties(每一行是啥意思,自行百度)

    log4j.rootLogger=info,stdout, infofile
    ######################################################################
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.Target=System.out
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
    ######################################################################
    log4j.appender.infofile=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.infofile.File=/log/infofile-log.log
    log4j.appender.infofile.Append=true
    log4j.appender.infofile.Threshold=info
    log4j.appender.infofile.layout=org.apache.log4j.PatternLayout
    log4j.appender.infofile.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
    log4j.appender.infofile.encoding=GBK

    但是、启动项目后,我发现并没有生成 /log/infofile-log.log 文件

    网上查了一下,大概原因是jar包冲突,因为 spring-boot-starter-web、spring-boot-starter-data-jpa、spring-boot-starter-jdbc等下面有一些logback、log4j、slf4j等相关的包,我用 dependency:tree命令查到具体是那些jar,然后一一排除,这样再启动时,就会发现 infofile-log.log文件创建成功了

    这种方法比较繁琐,但是可以更理解jar包依赖关系

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
    <exclusions>
    <exclusion>
    <groupId>org.slf4j</groupId>
    <artifactId>*</artifactId>
    </exclusion>
    </exclusions>
    </dependency>

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <exclusions>
    <exclusion>
    <groupId>ch.qos.logback</groupId>
    <artifactId>*</artifactId>
    </exclusion>
    <exclusion>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>*</artifactId>
    </exclusion>
    </exclusions>
    </dependency>

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jdbc</artifactId>
    <exclusions>
    <exclusion>
    <groupId>org.slf4j</groupId>
    <artifactId>*</artifactId>
    </exclusion>
    </exclusions>
    </dependency>

    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j</artifactId>
    <version>1.3.8.RELEASE</version>
    </dependency>

     --------------------------------------------------------------------------------------------------------------------------------------------------------------

    看这里,更优雅一些: https://www.cnblogs.com/myfrank/p/14286815.html

  • 相关阅读:
    SCAU 9504 面试
    SCAU 9503 懒人选座位
    SCAU 8628 相亲
    SCAU 10691 ACM 光环
    SCAU 8626 原子量计数
    SCAU 10674 等差对
    HDU ACM 1048 The Hardest Problem Ever (水题)
    SCAU 9502 ARDF
    SCAU 10686 DeathGod不知道的事情
    SCAU 8629 热身游戏(高精度)
  • 原文地址:https://www.cnblogs.com/myfrank/p/13730415.html
Copyright © 2011-2022 走看看