SpringBoot使用log4j2进行日志管理

  • springboot如何使用log4j2进行日志管理,springboot应用默认的日志记录组件是logback.
    • 为什么使用log4j2,其根本原因在于log4j2使用了LMAX, 一个无锁的线程间通信库代替了, 并发性能大大提升.
      • 优点:
        • 丢数据这种情况少,可以用来做审计功能。而且自身内部报的exception会被发现,但是logback和log4j不会。
        • log4j2使用了disruptor技术,在多线程环境下,性能高于logback等10倍以上。
        • (garbage free)之前的版本会产生非常多的临时对象,会造成GC频繁,log4j2则在这方面上做了优化,减少产生临时对象。尽可能少的GC
        • 利用插件系统,使得扩展新的appender,filter,layout等变得容易.
        • 因为插件系统的简单性,所以在配置的时候,可以不用具体指定所要处理的类型。class
        • Java 8 lambda support for lazy logging
        • Support for Message objects
        • 对filter的功能支持的更强大
        • 系统日志(Syslog)协议supports both TCP and UDP
        • 利用jdk1.5并发的特性,减少了死锁的发生。
        • Socket LogEvent SerializedLayout
        • 支持kafka queue
    • pom:
      • <dependency>
        	<groupId>org.springframework.boot</groupId>
        	<artifactId>spring-boot-starter-web</artifactId>
        	<exclusions>
        	        <!-- 排除springboot的默认logback日志配置 -->
        		<exclusion>
        			<groupId>org.springframework.boot</groupId>
        			<artifactId>spring-boot-starter-logging</artifactId>
        		</exclusion>
                        <!-- 下面两个看自己的项目 -->
                        <exclusion>
                            <artifactId>logback-core</artifactId>
                            <groupId>ch.qos.logback</groupId>
                        </exclusion>
                        <exclusion>
                            <artifactId>logback-classic</artifactId>
                            <groupId>ch.qos.logback</groupId>
                        </exclusion>
        	</exclusions>
        </dependency>
        <!-- 导入log4j2依赖 -->
        <dependency>
        	<groupId>org.springframework.boot</groupId>
        	<artifactId>spring-boot-starter-log4j2</artifactId>
        </dependency>

         

      • 这样启动的时候,就不会报log冲突了.

    • log4j2-spring.xml

      • 在src/main/resources目录下新建一个log4j2.xml文件。里面写log4j2的自定义配置

      • 如果使用默认的名字就不用再配置文件中指定了.

        • 默认名:
        • 不然就要在application.yml或者application.properties添加
          • yml
            logging:
              config: classpath:logback-spring-dev.xml
            
            properties:
            logging.config=classpath:logback-spring-dev.xml
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值