Log4j 1.2.7版本使用手册

Log4j核心对象由三部分组成:
- logger :负责采集日志信息
- appenders:负责将日志信息发布到不同地方,终端,数据库,文件
- layouts:负责将日志格式化为各种形式

支持对象
- Level对象,定义日志信息的粒度和优先级;OFF、DEBUG、INFO、ERROR、WAR
N、FATAL、ALL。
- Filter过滤对象,分析日志信息,进而决定该条日志是否被记录;一个 Appender 对象可对应多个 Filter 对象,当日志信息传给 Appender 对象时,与其关联的所有 Filter 对象需要判断是否将日志信息发布到目的地。
- LogManager 对象,对象日志管理框架。
- ObjectRenderer 对象,ObjectRenderer对象负责为传入日志框架的不同对象提供字符串形式的表示,Layout 对象使用该对象来准备 最终的日志信息。

配置日志信息输出目的地 Appender

Log4j 提供的 appender 有以下几种:
- 1.org.apache.log4j.ConsoleAppender (控制台),
- 2.org.apache.log4j.FileAppender (文件),
- 3.org.apache.log4j.DailyRollingFileAppender (每天产生一个日志文件),
- 4.org.apache.log4j.RollingFileAppender (文件大小到达指定尺寸的时候产生一个 新的文件)
- 5.org.apache.log4j.WriterAppender (将日志信息以流格式发送到任意指定的地方)
 

配置日志信息的格式(布局),输出格式

Log4j 提供的 layout 有以 e 几种:
- 1.org.apache.log4j.HTMLLayout (以 HTML 表格形式布局),
- 2.org.apache.log4j.PatternLayout (可以灵活地指定布局模式),
- 3.org.apache.log4j.SimpleLayout (包含日志信息的级别和信息字符串),
- 4.org.apache.log4j.TTCCLayout (包含日志产生的时间、线程、类别等等信息)

下面是日志信息格式化所用的占位符,输出格式化例子:

#输出格式
#%m 输出代码中指定的消息
#%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
#%r 输出自应用启动到输出该log信息耗费的毫秒数
#%c 输出所属的类目,通常就是所在类的全名
#%t 输出产生该日志事件的线程名
#%n 输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”
#%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921
#%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10)

格式化例子:
log4j.appender.stdout.layout.ConversionPattern = [%-d{yyyy-MM-dd HH:mm:ss}]-[ %t:%r ]-[ %p ]-%m%n
输出:
[2017-07-20 23:13:10]-[ main:0 ]-[ DEBUG ]-debug msg

注意:

1.信息格式化的小知识

这些参数中间可能会参杂一些数字比如:%5p它的意思就是在输出此参数之前加入多少个空格,还有就是里面的“\”的作用是转义字符

log4j 1.2.17配置详解


# Log4j 1.2.17 版本的属性配置文件

### set log levels 设置根logger , 设置输出的日志级别为debug以上,定义了三个 appender:stdout, D, E ###
log4j.rootLogger = DEBUG , stdout, D, E

### 输出到控制台 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值