log4j2的xml配置控制台打印日志和自定义打印到指定日志文件

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
    <Appenders>
        <!-- 控制台打印日志 -->
        <Console name="consolePrint" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
        </Console>
        <!-- 将日志输出到指定文件 fileName属性值为日志文件地址-->
        <File name="LogFile" fileName="D:\file.log" append="false">
            <PatternLayout
                pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n" />
        </File>
        <File name="SqlLogFile" fileName="D:\mybatis.log" append="false">
            <PatternLayout
                pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n" />
        </File>

    </Appenders>
    <Loggers>
        <Root level="info">
            <AppenderRef ref="consolePrint" />
        </Root>

        PS:配置多个logger可以指定不同类或包下打印的日志输出到不同的文件里,name属性值设置为指定的类或包,additivity设置为"false"将只作用于当前appender-ref,即sql不会打印在root指定的appender(控制台)里,只会单独打印在指定的日志文件(mybatis.log)中
        <!-- 配置mybatis打印sql 指定mapper所在包的全路径 -->
        <logger name="com.domain.mapper" level="DEBUG" additivity="false">
            <appender-ref ref="SqlLogFile" />
        </logger>

        <!-- 将com.test包下的Test类中的级别不小于INFO的日志既打印到root指定的appender(控制台)中又单独打印到指定的日志文件(file.log)中 -->

        <logger name="com.test.Test" level="INFO" additivity="true">
            <appender-ref ref="LogFile" />
        </logger>

    </Loggers>
</Configuration>
 

 

 

package com.test;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

public class Test {

  private Logger logger = LogManager.getLogger(Test.class);

  public void test() {

       logger.info("我将被打印到file.log中");

}

  
}
 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值