Log4j简介
log4j是Apache下的开源项目,主要功能为采集日志信息并输出打印。Log4j主要组件有如下三个。
(1)Logger:记录器,并提供细粒度划分,定义了不同的日志级别。这些日志级别的优先级如下:
all<debug<info<warn<error<fatal<off.
(2)Appender:Log4j允许把日志输出到不同的地方。Console,Files等。
(3)Layout:格式化日志输出方式
Log4j可以有两种配置方式,XML式或者.properties形式。xml式文件基本配置如下:
// An highlighted block
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<Concole name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss:SSS}[%t]%-5level%logger{36}-%msg%n">
</Console>
</Appenders>
<Loggers>
<Root level="debug">
<AppenderRef ref="Console"/>
</Loggers>
Log4j依赖添加
一个应用的日志采集,通常需要slf4j提供接入,可以理解slf4j为一根数据线,一端连接具体的应用,一端连接日志系统,完成日志打印。因此对于Log4j的日志系统一般需要具备以下三个jar:slf4j-api,
slf4j-log4j2以及log4j。maven中依赖如下:
// An highlighted block
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.8.0-beta4</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.8.0-beta2</version>
<scope>test</scope>
</dependency>
加载slf4j也可以选择使用Simple-slf4j的方式,如果采用这种方式,maven中加载如下两个依赖即可。
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.25</version>
</dependency>
另外,将Log4j的配置文件放置于resource下,即可运行。log4j配置文件如下:
#set log levels
log4j.rootLogger=DEBUG,Console
#输出控制台
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.Target=System.out
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE}%5p%c{1}:%L-%m%n
来源:CSDN
作者:jasonnee
链接:https://blog.csdn.net/u014179317/article/details/103653036