如何进行Log4j2的简单使用

  介绍

本篇文章为大家展示了如何进行Log4j2的简单使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

日志是一个系统经常用到的功能,我们可以在调试的时候依靠日志查看输出,在程序运行的时候通过查看日志判断程序运行状态。在Java世界中,有一个非常著名的日志类库——Log4j。现在Log4j也有了新版本,就是Log4j2。新版本的好处我就不多说了。让让我们来开始使用吧。

引入Log4j2

要使用Log4j2,第一步就是先导入它的jar包。如果是普通项目的话,到Log4j2官网下载jar包,然后将<代码> log4j-api-2.7.jar 和<代码> log4j-core-2.7.jar>

如果使用Maven或者Gradle的话,到mvn仓库查询查找这两个包,然后添加到项目依赖中。这样就完成了准备工作。

然后打开项目,添加以下两句,创建一个记录器并调试一些信息。注意这里的记录器和LogManager两个类的全名分别是<代码> org.apache.logging.log4j.LogManager 和<代码> org.apache.logging.log4j.Logger> 之后>

 Logger  Logger =, LogManager.getLogger ();
  logger.debug (“5555555“); 

然后运行一下项目,就可以看到对应的输出了。

日志级别

如果你照着前面的做了,就会发现其实什么输出都没有,只有这么一句话:<代码>错误StatusLogger没有发现log4j2配置文件。使用默认配置:日志> <李>

% d {HH: mm: ss。SSS}输出时间,精确度为毫秒。

<李>

% t输出当前线程的名称。

<李>

% 5级输出日志级别,5表示左对齐并且固定占5个字符宽度,如果不足用空格补齐。

<李>

%记录器输出记录器名称,如果是根的话就没有名称。

<李>

%味精日志信息,也就是我们传入的信息。

<李>

% n换行。

<李>

% F输出所在的文件名。

<李>

% L输出行号。

<李>

% M输出所在方法名。

<李>

% L,输出语句所在的位置信息,包括文件名、类名、方法名,行号。

自定义配置

自定义记录器

说了这么多,现在我们就可以开始自定义配置文件了。首先我们来添加一个新的记录器,来记录所有信息,这个记录器的名称就叫做TRACE_ALL吧。这个记录器有两个属性,指水平定记录级别,可加性指定传递性。假如传递性指定为真,如果我们现在使用TRACE_ALL记录一个调试级别的日志,由于调试级别也符合根的记录范围,这样这个日志就会记录两遍。最后,我们用<代码> & lt; AppenderRef ref=癈onsole"/祝辞>

现在配置文件应该是这样。

 & lt; ? xml  version=?.0“,编码=癠TF-8" ?祝辞& lt; Configuration 状态=癐NFO"比;
  ,,,& lt; Appenders>
  ,,,,,,,& lt; Console  name=癈onsole",目标=癝YSTEM_OUT"比;
  ,,,,,,,,,,,& lt; PatternLayout 模式=? d {HH: mm: ss.SSS}, [t] %, % 5 level  %记录器{36},安康;%味精% n"/比;
  ,,,,,,,& lt;/Console>
  ,,,& lt;/Appenders>
  ,,,& lt; Loggers>
  ,,,,,,,& lt; Root 水平=癲ebug"比;
  ,,,,,,,,,,,& lt; AppenderRef  ref=癈onsole"/比;
  ,,,,,,,& lt;/Root>
  ,,,,,,,& lt; Logger  name=癟RACE_ALL",水平=皌race",相加性=癴alse"比;
  ,,,,,,,,,,,& lt; AppenderRef  ref=癈onsole"/比;
  ,,,,,,,& lt;/Logger>
  ,,,& lt;/Loggers> & lt;/Configuration> 

程序代码是这样的。在调用getlog的时候指定要使用哪一个记录器。

 Logger  Logger =, LogManager.getLogger (“TRACE_ALL");
  logger.info (“5555555“); 

自定义Appender

除了使用控制台作为日志输出目的地之外,我们还可以定义其他的输出,比如文件。下面我们来新建一个文件Appender。在输出源节点下新建一个文件节点,名字和文件名属性分别指定Appender名称和目的文件名,然后我们指定TRACE_ALL记录器同时将日志输出到控制台和文件。

 & lt; ? xml  version=?.0“,编码=癠TF-8" ?祝辞& lt; Configuration 状态=癐NFO"比;
  ,,,& lt; Appenders>
  ,,,,,,,& lt; Console  name=癈onsole",目标=癝YSTEM_OUT"比;
  ,,,,,,,,,,,& lt; PatternLayout 模式=? d {HH: mm: ss.SSS}, [t] %, % 5 level  %记录器{36},安康;%味精% n"/比;
  ,,,,,,,& lt;/Console>
  ,,,,,,,& lt; File  name=癋ile",文件名=癉: \电脑\ mylog.txt"比;
  ,,,,,,,,,,,& lt; PatternLayout 模式=? d {HH: mm: ss.SSS}, [t] %, % 5 level  %记录器{36},安康;%味精% n"/比;
  ,,,,,,,& lt;/File>
  ,,,& lt;/Appenders>
  ,,,& lt; Loggers>
  ,,,,,,,& lt; Root 水平=癲ebug"比;
  ,,,,,,,,,,,& lt; AppenderRef  ref=癈onsole"/比;
  ,,,,,,,& lt;/Root>
  ,,,,,,,& lt; Logger  name=癟RACE_ALL",水平=皌race",相加性=皌rue"比;
  ,,,,,,,,,,,& lt; AppenderRef  ref=癋ile"/比;
  null
  null
  null

如何进行Log4j2的简单使用