Log4j 2使用教程一【简单使用】

来源:互联网 发布:js监听软键盘收起事件 编辑:程序博客网 时间:2024/05/19 02:01

环境

操作系统:win7 

开发工具:Eclipse 

环境:jdk1.8

log4j2版本: 2.8.2

准备

下载jar

官网:https://logging.apache.org/log4j/2.x/download.html

把jar包(log4j-api-2.8.2.jar和log4j-core-2.8.2.jar)放入到项目中去

开始使用

假设我们要使用log4j2,我们一般是先声明成一个静态成员变量:

private static final Logger logger = LogManager.getLogger(MyApp.class);// 或者private static final Logger logger = LogManager.getLogger(MyApp.class.getName());
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

声明好logger后,我们就可以开始使用它了。

假设我们有这么一个程序:

package test;import org.apache.logging.log4j.LogManager;import org.apache.logging.log4j.Logger;public class Hello {    private static Logger logger = LogManager.getLogger(Hello.class.getName());    public void getHello() {        logger.entry();        logger.trace("我是trace");        logger.info("我是info信息");        logger.error("我是error");        logger.fatal("我是fatal");        logger.trace("退出程序.");        logger.exit();    }    public static void main(String[] args) {        new Hello().getHello();    }}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

如果没有自定义配置文件,执行上面的方法后,在控制台显示如下:

10:45:05.641 [main] ERROR test.Hello - 我是error10:45:05.644 [main] FATAL test.Hello - 我是fatal
  • 1
  • 2
  • 1
  • 2

从结果上看出,只有>=error级别的日志打印出来了。 
这是因为Log4j有一个默认的配置,它的日志级别是ERROR,输出只有控制台。 
如果我已经定义好了日志,我把日志级别改成了TRACE,输出会变成下面这样:

10:48:21.326 [main] TRACE test.Hello - Enter10:48:21.330 [main] TRACE test.Hello - 我是trace10:48:21.331 [main] INFO  test.Hello - 我是info信息10:48:21.331 [main] ERROR test.Hello - 我是error10:48:21.331 [main] FATAL test.Hello - 我是fatal10:48:21.331 [main] TRACE test.Hello - 退出程序.10:48:21.331 [main] TRACE test.Hello - Exit
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

配置文件

log4j2默认下载包里是没有配置文件的。下面这个配置文件等于缺省配置: 
https://logging.apache.org/log4j/2.x/manual/configuration.html

<?xml version="1.0" encoding="UTF-8"?><Configuration status="WARN">  <Appenders>    <Console name="Console" target="SYSTEM_OUT">      <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>    </Console>  </Appenders>  <Loggers>    <Root level="trace">      <AppenderRef ref="Console"/>    </Root>  </Loggers></Configuration>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13






原创粉丝点击