【log4j2】log4j的升级版log4j2的简单入门使用

时间:2022-08-15 08:44:32

1.jar包

log4j-api.jar    +    log4j-core.jar

maven仓库配置:

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

2.配置文件

名称必须使用 log4j2.xml  区别于旧版本的log4j.xml

配置内容范例及说明:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn">
<!--配置一些全局属性供下面引用-->
<Properties>
<Property name="fileName">d:/log2</Property>
<Property name="backupFilePattern">d:/backup-%i.log</Property>
</Properties>
<!--配置输出源,即输出到什么地方(控制台 or 文件),文件设置最大存储容量10MB,超过之后进行备份,备份最多备份5个文件-->
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%date{yyyy-MM-dd HH:mm:ss.SSS} %level [%thread][%file:%line] - %msg%n" />
</Console>
<RollingFile name="Log" fileName="${fileName}" filePattern="${backupFilePattern}">
<PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n" />
<Policies>
<SizeBasedTriggeringPolicy size="10MB" />
</Policies>
<DefaultRolloverStrategy max="5" />
</RollingFile >
</Appenders>
<!--配置记录器,root为记录器的顶层即父,其他皆为子 设置输出到哪里(控制台或者文件),设置输出等级-->
<Loggers>
<Root level="WARN">
<AppenderRef ref="Console" />
<!--<AppenderRef ref="Log" />--> </Root>
<Logger level="Warn" name="com.raipeng.work">
<AppenderRef ref="Log" />
</Logger>
</Loggers>
</Configuration>

3.使用

在java类中调用记录器与1有区别:1用的是Logger logger = Logger.getLogger(this.class.getName);

2现在用的是Logger logger = LogManager.getLogger(this.class.getName());

import org.apache.logging.log4j.Logger;

/**
* Created by 111 on 2015/11/13.
*/
public class Log4jTest {
public static void main( String[] args ) {
Logger logger = org.apache.logging.log4j.LogManager.getLogger(Log4jTest.class.getName());
logger.info("info run");//切换log4j2.xml配置文件中的记录级别可以控制该方法是否显示
logger.warn("warn run");
}
}