如何使用Log日志记录错误信息?
我们需要将一些错误信息打印到日志文件中,这时候系统不提供此类的JAR包,需要导入第三方JAR包,那就是Log4jJAR包
使用Log4jJAR包有什么好处?
1、有六种级别的打印方式
2、可以打印信息到不同的地方
3、可以有丰富的打印信息
如何导入JAR包?
可以右键项目,在buildpath中添加add libraries或者add JAR包,这里最好使用一个libraries
Log4j有哪两种版本,需要注意什么?
1、有log4j和log4j2这两个 1、2版本。
2、它们都需要有配置文件,1版本配置文件名为log4j.properties,这是一个txt文件,2版本配置文件名为log4j2.xml,这是一个xml文件,但是第二个版本在未配置的时候可以输出Error和fatal级别信息
3、在类中需要导入不同的JAR包
①import.org.apache.log4j.Logger
②import.org.apache.logging.log4j.Logger
4、两个版本建立对象的不同方式
①Logger log = Logger.getLogger()
②Logger log = LogManager.getLogger()
有哪六种级别的打印方式?
off > error > warn > info > debug > trace
log4j.properties的配置文件内容
log4j.rootLogger = INFO , out , out1
log4j.appender.out = org.apache.log4j.ConsoleAppender
log4j.appender.Target = System.err
log4j.appender.out.layout = org.apache.log4j.PatternLayout
log4j.appender.out.layout.ConversionLayout = [%d{yyyy-MM-dd HH-mm-ss-SSS}][%r][%l][%p][%t][%c][%m][%n]
log4j.appender.out.layout = org.apache.log4j.SimpleLayout
log4j.appender.out.layout = org.apache.log4j.TTCCLayout
yyyy-MM-dd HH-mm-ss-SSS
log4j.appender.out.ImmidiateFlush =true
log4j.appender.out.Threshold = error
log4j2.xml的配置文件内容
<Configure status = "error" minitorInterval = "1000">
<properties name = "LOG_HOME">log</properties>
<Appenders>
<Console name ="Console" Target = "System_err">
<PatternLayout pattern = "[%d{yyyy-MM-dd HH:mm:ss:SSS}][%-5level][%t][%c][%r][%l] %msg %n">
</Console>
<File name ="File" filename ="${LOG_HOME}/log4j.log">
<PatternLayout pattern = "[%d{yyyy-MM-dd HH:mm:ss}][%-5level][%t][%c][%r][%l]%msg%n">
</File>
</Appenders>
<Loggers>
<Root level = "info" >
<AppendersRef ref = "Console"></AppendersRef>
<AppendersRef ref = "File"></Appenders>
</Root>
</Loggers>
</Configure>
注意:在建立对象的时候,需要在参数列表中加入对应的AppenderRef,如果不写默认是打印到控制台