log4j(一)简介

实例 log4j.properties 文件,如下:

log4j.rootLogger=DEBUG,CONSOLE,FILE,DailyRollingFile,RollingFile,EFile

#Console
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d [%t] %-5p %c - %m%n

#File 单独提取错误日志
log4j.appender.FILE = org.apache.log4j.DailyRollingFileAppender
log4j.appender.FILE.File =E:\\workForJava\\SSMTestLog\\ERROR.log
log4j.appender.FILE.Append = true
log4j.appender.FILE.Threshold = ERROR
log4j.appender.FILE.layout = org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern =%d [%t] %-5p %c - %m%n

#DailyRollingFile
log4j.appender.DailyRollingFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DailyRollingFile.File =E:\\workForJava\\SSMTestLog\\ERROR.log
log4j.appender.DailyRollingFile.layout = org.apache.log4j.PatternLayout
log4j.appender.DailyRollingFile.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
 
#RollingFile
log4j.appender.RollingFile = org.apache.log4j.RollingFileAppender
log4j.appender.RollingFile.File = =E:\\workForJava\\SSMTestLog\\ERROR.log
log4j.appender.RollingFile.MaxFileSize=1KB
log4j.appender.RollingFile.MaxBackupIndex=3
log4j.appender.RollingFile.layout = org.apache.log4j.PatternLayout
log4j.appender.RollingFile.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n

#EFile
log4j.appender.EFile = org.apache.log4j.RollingFileAppender
log4j.appender.EFile.File = E:\\workForJava\\SSMTestLog\\ERROR.log
log4j.appender.EFile.MaxFileSize=1KB
log4j.appender.EFile.MaxBackupIndex=3
log4j.appender.EFile.layout = org.apache.log4j.PatternLayout
log4j.appender.EFile.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n

1、日志等级说明:

ERROR、WARN、INFO、DEBUG,从左到右输出信息由少变多,等级由高变低


2、log4j总配置:

log4j.rootLogger = DEBUG,CONSOLE,FILE,DailyRollingFile,RollingFile

日志等级DEBUG
输出到CONSOLE, FILE, DailyRollingFile, RollingFile, EFile文件,名称自定义


3、定义文件名、输出类型

log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender

等号左侧:CONSOLE 是自定义文件名
等号右侧可选属性如下:

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

4、日志的输出路径

log4j.appender.FILE.File =d:\\log\\log_File\\log.log

5、自定义输出格式

log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d [%t] %-5p %c - %m%n

%d:输出日志日期、时间
%t: 输出事件的线程名
%c:输出类名
%m:输出报错信息
%n: 输出换行
%p:输出日志信息级别(DEBUG,INFO,WARN,ERROR,FATAL),%-5p级别信息占5个字符,不足的用空格补齐,负号表示左对齐

-: 左对齐
%r: 输出自应用启动到输出该log信息耗费的毫秒数
%t: 输出产生该日志事件的线程名
%l: 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类名、线程,行数
%x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中
%%: 输出一个"%"字符
%F: 输出文件名称
%L: 输出行号

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


6、多次运行时日志是否追加,默认为true

log4j.appender.FILE.Append = true

7、单独设置 “FILE” 文件的输出级别,区别于第2条总配置

log4j.appender.FILE.Threshold = ERROR

8、文件最大容量

log4j.appender.RollingFile.MaxFileSize=1KB

9、文件最大数量

log4j.appender.RollingFile.MaxBackupIndex=3

文章引用
http://blog.java1234.com/blog/q.html
https://www.cnblogs.com/dragkiss/p/3948619.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在应用程序中添加日志记录总的来说基于三个目的:监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析...
    时待吾阅读 5,068评论 0 6
  • 在应用程序中添加日志记录总的来说基于三个目的:监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析...
    时待吾阅读 5,126评论 1 13
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,292评论 19 139
  • 去年今日此时中,吃着烧烤脸色红。吹牛说要进爵去,哪知隔月就踏空。可怜到今近一载,身已疲惫爵未封,遥看北斗渐已远,只...
    一点点先生阅读 256评论 0 0
  • 我看见了一块蛋糕,看起来很好吃,香气扑鼻,可我不能吃我有蛀牙,可它太迷人了我想吃,我想,小小的吃一口不会怎么样吧,...
    直直惹人爱阅读 218评论 0 1