记录log4j Appender整理

输出方式:
org.apache.log4j.ConsoleAppender 控制台
org.apache.log4j.FileAppender 文件
org.apache.log4j.DailyRollingFileAppender 每天产生一个日志文件
org.apache.log4j.RollingFileAppender 文件大小到达指定尺寸的时候产生一个新的文件
org.apache.log4j.WriterAppender 将日志信息以流格式发送到任意指定的地方

PatternLayout配置:log4j.appender.operation.layout=org.apache.log4j.PatternLayout
如 ConversionPattern配置格式说明
log4j.appender.operation.layout.ConversionPattern =
%d{yyyy-MM-dd HH:mm:ss} [%5p] - %c -%F(%l - %t) -%m%n

配置
说明 举例
%c 输出所属的类目,通常就是所在类的全名。后面还可以带一个十进制的参数,限制输出类目的层级,默认输出完整类目。
%c
%c{2}
%C 调用logger的类的类目。后面还可以带一个十进制的参数,限制输出类目的层级,默认输出完整类目。
%C 处理较慢,谨慎使用
%C{1}
%d 输出日志记录的时间,后面可以带日期格式的参数,参数编码默认为ISO8601,日期格式参考SimpleDateFormat
%d 2017-04-18 09:23:56,561 (默认)
%d{yyyy-MM-dd HH:mm:ss SSS} 2017-04-18 09:23:56 561
%d{ABSOLUTE} 09:23:56,561
%d{DATE} 18 四月 2017 09:23:56,561
%d{ISO8601} 2017-04-18 09:23:56,561
%F 显示调用logger的源文件名 HomeController.java 处理较慢,谨慎使用
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数 com.shanshan.bo.HomeController.border(HomeController.java:155)
%L 显示调用logger的代码行数 处理较慢,谨慎使用
%m 输出代码中指定的信息
%M 显示调用logger的方法名 main 处理较慢,谨慎使用
%n 当前系统下的换行符
%p 显示该条日志的优先级 INFO
%r 显示从程序启动时到记录该条日志时已经经过的毫秒数
%t 输出产生该日志事件的线程名 tomcat-http–38
%x 按NDC(Nested Diagnostic Context,线程堆栈)顺序输出日志
%X 按MDC(Mapped Diagnostic Context,线程映射表)输出日志。通常用于多个客户端连接同一台服务器,方便服务器区分是那个客户端访问留下来的日志。
%% 输出一个百分号

此外:DailyRollingFileAppender 和 RollingFileAppender 的着重点不同;
后者是文件大小进行备份存储;
前者则是按照日期生成;

在DailyRollingFileAppender中可以指定monthly(每月)、 weekly(每周)、daily(每天)、half-daily(每半天)、hourly(每小时)和minutely(每分钟)六个频度,这是通过为 DatePattern选项赋予不同的值来完成的。DatePattern选项的有效值为:
'.'yyyy-MM,对应monthly(每月)
'.'yyyy-ww,对应weekly(每周)
'.'yyyy-MM-dd,对应daily(每天)
'.'yyyy-MM-dd-a,对应half-daily(每半天)
'.'yyyy-MM-dd-HH,对应hourly(每小时)
'.‘yyyy-MM-dd-HH-mm,对应minutely(每分钟)
DatePattern中不用处理的文字要放到单引号(’)中,如上面的(.)。如果您对此有疑问可以查阅SimpleDateFormat的文档。DailyRollingFileAppender中使用这个类来处理DatePattern。

例如:
log4j.rootLogger=info,file
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.File=Message.log
log4j.appender.file.DatePattern=’_‘yyyy-MM-dd’.log’
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyyMMdd HH:mm:ss} %p %l [%t] %m%n

参考:https://www.cnblogs.com/appleat/p/9842200.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值