log4j中appender的简介说明

转自:

log4j中appender的简介说明

下文笔者将讲述log4j中的appender的简介说明,如下所示:

log4j的appender的功能

log4j中appender的功能:
    用于定义输出文件的方式
有以下5种输出方式可定义
 1.org.apache.log4j.RollingFileAppender(滚动文件,自动记录最新日志)
 2.org.apache.log4j.ConsoleAppender (控制台)
 3.org.apache.log4j.FileAppender (文件)
 4.org.apache.log4j.DailyRollingFileAppender (每天产生一个日志文件)
 5.org.apache.log4j.WriterAppender (将日志信息以流格式发送到任意指定的地方) 

appender常见子节点说明

1.Console节点用来定义输出到控制台的Appender

name:Console的属性,指定Appender的名字
target:Console的属性,SYSTEM_OUT 或 SYSTEM_ERR,一般只设置默认:SYSTEM_OUT
PatternLayout:Console的子节点,输出格式,不设置默认为:%m%n

File节点用来定义输出到指定位置的文件的Appender

name:File的属性,指定Appender的名字
fileName:File的属性,指定输出日志的目的文件带全路径的文件名
PatternLayout:File的子节点,输出格式,不设置默认为:%m%n

RollingFile节点用来定义超过指定大小自动删除旧的创建新的的Appender

name:RollingFilede的属性,指定Appender的名字
fileName:RollingFilede的属性,指定输出日志的目的文件带全路径的文件名
filePattern:RollingFilede的属性,指定新建日志文件的名称格式
PatternLayout:RollingFilede的子节点,输出格式,不设置默认为:%m%n
DefaultRolloverStrategy:RollingFilede的子节点,用来指定同一个文件夹下最多有几个日志文件时开始删除最旧的,创建新的(通过max属性)
Policies:RollingFilede的子节点,指定滚动日志的策略,就是什么时候进行新建日志文件输出日志
TimeBasedTriggeringPolicy:Policies子节点,基于时间的滚动策略,interval属性用来指定多久滚动一次,默认是1hour。
  modulate=true用来调整时间:比如现在是早上3am,interval是4,那么第一次滚动是在4am,接着是8am,12am...而不是7am.
SizeBasedTriggeringPolicy:Policies子节点,基于指定文件大小的滚动策略,size属性用来定义每个日志文件的大小
Filters:RollingFilede的子节点,决定日志事件能否被输出。过滤条件有三个值:ACCEPT(接受), DENY(拒绝) or NEUTRAL(中立)(后面具体讲)
ACCEP和DENY比较好理解就是接受和拒绝的意思,在使用单个过滤器的时候,一般就是使用这两个值。但是在组合过滤器中,如果用接受ACCEPT的话,日志信息就会直接写入日志文件,后续的过滤器不再进行过滤。所以,在组合过滤器中,接受使用NEUTRAL(中立),被第一个过滤器接受的日志信息,会继续用后面的过滤器进行过滤,只有符合所有过滤器条件的日志信息,才会被最终写入日志文件

appender日志格式

%c 输出所属类的全名,可在修改为 %d{Num} ,Num类名输出的维(如:"org.apache.elathen.ClassName",%C{2}将输出elathen.ClassName)
%d 输出日志时间其格式为 %d{yyyy-MM-dd HH:mm:ss,SSS},可指定格式 如 %d{HH:mm:ss}
%l 输出日志事件发生位置,包括类目名、发生线程,在代码中的行数
%n 换行符
%m 输出代码指定信息,如info(“message”),输出message
%p 输出优先级,即 FATAL ,ERROR 等
%r 输出从启动到显示该log信息所耗费的毫秒数
%t 输出产生该日志事件的线程名
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
需要配置: log4j.rootLogger=debug,CONSOLE,testfile,A1,MAIL ################### # Console Appender ################### 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=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n #log4j.appender.CONSOLE.layout.ConversionPattern=[start]%d{DATE}[DATE]%n%p[PRIORITY]%n%x[NDC]%n%t[THREAD] n%c[CATEGORY]%n%m[MESSAGE]%n%n ################### # 单个日子记录 ################### log4j.appender.testfile=org.apache.log4j.FileAppender log4j.appender.testfile.File=c\:\\file.html log4j.appender.testfile.Append=false log4j.appender.testfile.layout=org.apache.log4j.HTMLLayout log4j.appender.testfile.layout.ConversionPattern=[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n ################### # 每天一个日志文件 ################### log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender log4j.appender.A1.File=c\:\\SampleMessages.html log4j.appender.A1.DatePattern=yyyyMMdd-HH log4j.appender.A1.layout=org.apache.log4j.HTMLLayout ################### # 邮件发送 ################### log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender log4j.appender.MAIL.BufferSize=10 log4j.appender[email protected] log4j.appender.MAIL.SMTPHost=smtp.163.com log4j.appender.MAIL.SMTPUsername=wisdom_xw log4j.appender.MAIL.SMTPPassword= log4j.appender.MAIL.Subject=Messsage From LOG4J log4j.appender[email protected] log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout log4j.appender.MAIL.layout.ConversionPattern=[ErrorMessage] %d - %c -%-4r [%t] %-5p %c %x - %m%n

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值