1、rootLogger与rootCategory的区别

rootLogger是新的使用名称,对应Logger类
rootCategory是旧的使用名称,对应原来的Category类
Logger类是Category类的子类,所以,rootCategory是旧的用法,不推荐使用

2、格式参数

a)例句 : log4j.appender.stdout.layout.ConversionPattern= [QC] %p [%t] %C.%M(%L) | %m%n
%m 输出代码中指定的消息
%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL
%r 输出自应用启动到输出该log信息耗费的毫秒数
%t 输出产生该日志事件的线程名
%n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”
%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。相当于%C%M(%F:%L)
%L 只输出在代码中的行数。
%c 输出所属的类目,通常就是所在类的全名。这个类名是你初始化logger的时候传给logger的类名,即category。若你初始化时的语句如下:private final Logger log = Logger.getLogger(LogTest.class);则%c所指示的类名为:LogTest。
%c{n} n表示显示的包路径层数,如%c显示:com.spring.login.test,则%c{1}显示:test。而%c{2}显示:login.test。
%C(c大写) 输出日志所属类目的调用者的全类名。此处输出的是调用logger的那个类的名字,比如你有一个类叫:LogCaller,而你在初始化logger是传给他的参数却是:LogTest.class。那么使用大写的%C后实际打出的类是调用类,即LogCaller。性能较差,不建议使用。
[QC]是log信息的开头,可以为任意字符,一般为项目简称。

b)不常用的几个:
%F 输出日志消息产生时所在的文件名称。性能不好,不建议使用
%M 输出日志消息产生时所在的方法名称。性能不好,不建议使用
%x 输出和当前线程相关联的NDC(nested diagnostic context)环境,用于多客户多线程的应用中
%X 输出和当前线程相关联的MDC(mapped diagnostic context)环境。

c)一些输出格式说明:
可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式。如:
%20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,默认的情况下右对齐。
%-20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,”-”号指定左对齐。
%.30c:指定输出category的名称,最大的宽度是30,如果category的名称大于30的话,就会将左边多出的字符截掉,但小于30的话也不会有空格。
%20.30c:如果category的名称小于20就补空格,并且右对齐,如果其名称长于30字符,就从左边将多出的字符截掉。

3、RollingFileAppender选项

Threshold=DEBUG:指定日志消息的输出最低层次。
File=mylog.txt:指定消息输出到mylog.txt文件。
MaxFileSize=100KB: 后缀可以是KB, MB 或者是 GB. 在日志文件到达该大小时,将会自动滚动,即将原来的内容移到mylog.log.1文件。
MaxBackupIndex=2:指定可以产生的滚动文件的最大数。
ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。
Append=false:默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。
实例:
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = D:/work/test/test.log
log4j.appender.D.DatePattern='.'yyyy-MM-dd-HH-mm ##设置为每分钟产生一个日志文件
log4j.appender.D.Threshold = info ##设置该日志文件记录的日志级别为info及更高级
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ]  %m%n
在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(每分钟)

log4j学习笔记--ConversionPattern参数详解-- RollingFileAppender选项相关推荐

  1. ELK学习笔记之Logstash详解

    0x00 Logstash概述 官方介绍:Logstash is an open source data collection engine with real-time pipelining cap ...

  2. expect学习笔记及实例详解【转】

    1. expect是基于tcl演变而来的,所以很多语法和tcl类似,基本的语法如下所示: 1.1 首行加上/usr/bin/expect 1.2 spawn: 后面加上需要执行的shell命令,比如说 ...

  3. Java中大数据数组,Java基础学习笔记之数组详解

    摘要:这篇Java开发技术栏目下的"Java基础学习笔记之数组详解",介绍的技术点是"java基础学习笔记.基础学习笔记.Java基础.数组详解.学习笔记.Java&qu ...

  4. oracle scn 重置,学习笔记:Oracle SCN详解 SCN与Oracle数据库恢复的关系

    天萃荷净 分享一篇关于Oracle SCN的详解,介绍SCN与Oracle数据库恢复的关系和SCN在数据库中的作用 一.为什么需要System checkpoint SCN号与Datafile Che ...

  5. PyQt5学习笔记——一文详解QObject

    QObject详解笔记1 一.简介 QObject是所有Qt对象的基类 二.功能作用 2.1 对象名称.属性 2.1.1 API setObjectName("唯一名称") 给QT ...

  6. shell入门学习笔记-12-命令详解: echo与printf

    系列目录与参考文献传送门: shell入门学习笔记-序章 命令详解 admindeMacBook-Pro:myshell admin$ type cd cd is a shell builtin ad ...

  7. CoAP学习笔记——CoAP格式详解

    0 前言 CoAP是受限制的应用协议(Constrained Application Protocol)的代名词.在当前由PC机组成的世界,信息交换是通过TCP和应用层协议HTTP实现的.但是对于小型 ...

  8. Docker技术入门与实战 第二版-学习笔记-3-Dockerfile 指令详解

    前面已经讲解了FROM.RUN指令,还提及了COPY.ADD,接下来学习其他的指令 5.Dockerfile 指令详解 1> COPY 复制文件 格式: COPY  <源路径> .. ...

  9. CoAP协议学习笔记——CoAP格式详解

    CoAP是受限制的应用协议(Constrained Application Protocol)的代名词.在当前由PC机组成的世界,信息交换是通过TCP和应用层协议HTTP实现的.但是对于小型设备而言, ...

最新文章

  1. LaTex 变形的字母
  2. FPGA实战操作(1) -- SDRAM(Verilog实现)
  3. selenium+python自动化80-文件下载(不弹询问框)
  4. leetcode: Roman to Integer
  5. 第13章 使用ADO.NET访问数据库
  6. 微信和简书输入框文本选择手柄小bug
  7. H.264 无参考视频质量评价方法 (使用了基于遗传编程方法的符号回归)
  8. 质量和品质的区别_质量体系认证,与产品质量认证的区别 !
  9. 2.页面截长图工具-FireShot
  10. SQL Server 2008 R2 建立数据库,建立表,建立存储过程
  11. 两种实现九九乘法表的vb代码
  12. logistic人口模型python代码_人口模型(马尔萨斯--vs--logistic).ppt
  13. 前端工程师薪资差距可达7.3倍!4月程序员薪资统计出炉,速看!
  14. server sql 去 反斜杠_mssql sqlserver 检索字段中是否包含反斜杠的方法
  15. 单片空间后方交会程序c语言,摄影测量实习报告-单片空间后方交会
  16. html+css实现三角形的三种方法
  17. Python地理数据处理 十一:空间参照系统(SRS)
  18. 用大白菜装centos7_大白菜安装centos7iso
  19. ai论文调研——PAMI Popular Articles (December 2015)
  20. 似然函数Likelihood function

热门文章

  1. 有一丝丝的幸福在空中飘过
  2. python 网易公开课官网_哪里有python视频教程全集下载?
  3. 5G 核心网 PDU Session Release 信令流程
  4. MySQL利用存储过程自动生成千万条数据
  5. Zotero + baidu
  6. 大唐存储进驻金融信息技术创新生态实验室,助力金融自主生态建设
  7. html语言编辑方法,HTML 编辑器的介绍及推荐
  8. dp交换机命令_华为交换机配置命令解释
  9. 用JavaScript实现时间戳转为日期格式
  10. Python中的“strip()”和“split()”