关于log4j


一.log4j有什么作用?

总的来说 能够让你迅速找到出现问题得地方,节省时间


二.log4j的主要组件
2.1  Logger--日志记录器
Log4j允许开发人员定义多个Logger,每个Logger拥有自己的名字,Logger之间通过名字来表明隶属关系;
有个Logger称为Root永远存在且不能通过名字检索或引用,但可以通过Logger.getRootLogger()方法获得;
其他Logger通过 Logger.getLogger(String name)方法获取;


2.2  Appender--输出源
用来指明将所有的log信息存放到什么地方;
       种类:(被定义于org.apache.log4j.Level):
console:控制台;
files:文件;
GUI:图像界面;
components,NT Event Loggers等。
一个Logger可以拥有多个Appender,也就是可以将Log信息输出到多个地方;


2.3  Layout
作用:用来控制Log信息的输出方式,也就是格式化被输出的信息;

2.4  日志级别
Log4j中将输出的Log信息定义了5种级别,依次为Debug,Info,Warn,Error和Fatal;


2.5  三者关系:

  logger-----进行记录的主要类

 appender---记录的方式
 yalout---记录的格式


三. Log4j的配置文件
3.1  Log4j支持两种格式的配置文件 :XML格式和Java的property格式


3.2  Log4j提供的appender配置(分类)
org.apache.log4j.ConsoleAppender(控制台)---------------------------终端输出
org.apeche.log4j.FileAppender(文件)
org.apeche.log4j.DailyRollingFileAppender(每天产生一个日志文件);  件
org.apeche.log4j.RollingFileAppender(文件大小达到指定尺寸的时候产生新文件); 输出
org.apeche.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方);------------------流输出

3.3  Log4j的布局(layout)的配置(分类)
org.apeche.log4j.HTMLLayout(以HTML格式布局);
org.apeche.log4j.PatternLayout(可以灵活的指定布局模式)
org.apeche.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
org.apeche.log4j.TTCCLayout(包含日志产生的时间,线程,类别等信息)
注:在layout配置为PatternLayout时 要指定输出格式 即设置ConversionPattern


四.Log4j使用步骤

4.1  导包: 首先将logging-log4j-xxxxx.jar包导入;


4.2  写配置文件: 将编写的log4j的配置文件放到src的根目录下;


4.3  在类中使用log4j:  

在要输出日志的类中加入相关语句;

例如:private static Logger  log = Logger.getLogger(SystemServlet.class);


#等级为warn  信息输出到stdout,error这两个目的地
log4j.rootLogger=WARN, stdout, error

#定义stdout的输出端是哪种类型(共5种)      控制台
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
#定义stdout的输出端的layout是哪种类型(共4种)  	可以灵活地指定布局模式
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
#上面的layout使用了Pattern布局, 此处就要指定打印信息的具体格式Conversionpattern
log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p %c - %m%n



#指定error的输出端类型						每天产生一个日志文件
log4j.appender.error=org.apache.log4j.DailyRollingFileAppender
#指定error的输出端的layout类型				可以灵活地指定布局模式
log4j.appender.error.layout=org.apache.log4j.PatternLayout

#指定文件名以及文件路径
log4j.appender.error.File=${webapp.YCTradeUnion.root}/WEB-INF/logs/log4j
log4j.appender.error.DatePattern='-'yyyy-MM-dd'.log' 
log4j.appender.error.MaxFileSize=512KB
# Keep one backup file
log4j.appender.error.MaxBackupIndex=7
#指定日志文件内容的打印格式					优先级+产生该日志事件的线程名+日志时间点的日期或时间+日志信息所属的类目,通常就是所在类的全名 +代码中指定的具体日志信息+输出一个回车换行符 
log4j.appender.error.layout.ConversionPattern=%p %t %d %c - %m%n
# Print only messages of level WARN or above in the package com.foo.
#log4j.logger.com.foo=WARN

















































































































































  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值