• log4j2的简单应用


    这里只说明一下log4j2的简单配置和应用,类似“hello world”范例。

    首先,需要在pom.xml中配置log4j2的依赖dependency:

        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.11.1</version>
        </dependency>
    
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.11.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.11.1</version>
        </dependency>

    log4j2和之前的的1.x版本有一个明显的不同,其配置文件只能采用.xml, .json或者 .jsn。而1.x版本很多都是用properties文件的,所以这里需要注意下。

    下面是一个完整的xml格式的配置文件,定义了appenders,loggers,以及输出的pattern。更多配置项请查看官网。xml文件命名为log4j2.xml,放置在项目目录下:

    src/main/resources/log4j2.xml   或者是

    src/test/resources/log4j2.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <!-- 设置log4j2的自身log级别为warn -->
    <!-- OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL -->
    <configuration status="WARN" monitorInterval="30">
        <appenders>
            <console name="Console" target="SYSTEM_OUT">
                <PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - %m%n"/>
            </console>
            
            <File name="LogFile" fileName="src/test/resources/log.txt">
                <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
            </File>
     
        </appenders>
     
        <Loggers>
            <Logger name="fileLog" level="info" additivity="true">
                <AppenderRef ref="LogFile" />
            </Logger>
            <Root level="info">
                <AppenderRef ref="Console" />
            </Root>
        </Loggers>
     
    </configuration>

    在需要日志输入的java类文件中,声明Logger对象,注意import的是

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

     千万别import成java util类库的logger

    java.util.logging.Logger
    

     声明并使用:

    public static final Logger logger = LogManager.getLogger(XXX.class);
    
    logger.info("this is a log");
    
  • 相关阅读:
    .NET程序内存分析工具CLRProfiler的使用
    Hudson、Jenkins的node节点设置(分布式处理自动化测试用例)
    Ruby+watir不能定位新打开的窗口解决办法
    L邮政挂号信查询
    ruby读写txt文件
    Jenkins、Hudson安装、配置详细记录
    nagios原理(二)
    存储过程例子
    存储过程 插入明细表
    nagios原理(一)
  • 原文地址:https://www.cnblogs.com/xbxblog/p/9884586.html
Copyright © 2020-2023  润新知