#loglog4j.rootLogger=级别,输出源1, 输出源2………..
#-级别: DEBUG<INFO<WARN<ERROR<FATAL
#-规格: 如果一条日志信息的级别大于等于配置文件的级别,就记录
#-常见输出源: CONSOLE,FILE
#-例子:log4j.rootLogger=WARN,CONSOLE,FILE
#配置输出源所对应的辅助类:
#如果输出到文件就写FileAppender
#log4j.appender.输出源名称=类名
#输出源名称为:输出源1写的名称
#指写文件名: log4j.appender.FILE1.file=c:/file1.log
#指定布局方式(消息放入文件之后,怎样布局): log4j.appender.FILE1.layout= org.apache.log4j.SimpleLayout
#三种布局
# org.apache.log4j.SimpleLayout (包含日志信息的级别和信息字符串)
# org.apache.log4j.HTMLLayout (以HTML表格形式布局)
# org.apache.log4j.PatternLayout(自定义格式) (可以灵活地指定布局模式)
#只有在自定义的格式下,才可以使用如下
#log4j.appender.输出源名称.layout.ConversionPattern=
#-------%p%n%c%n%m%n%d%n%l%n%----n%
#%t:为线程名
#%p:日志级别
#%c:日志消息所在类名
#%m:消息内容
#%d:发生时间
#%l:行数
#%n:换行
#如果要显示中文,需要转码
#Native2ascii -encoding gb2312 源文件 目标文件
#指写文件路径 ${CATALINA.HOME}/logs:输出到tomcat的logs目录下
#配置例子全:
#log4j.rootLogger=WARN,FILE1,FILE2,FILE3
# log4j.appender.FILE1=org.apache.log4j.FileAppender
# log4j.appender.FILE1.file=${CATALINA.HOME}/logs/file1.log
# log4j.appender.FILE1.layout= org.apache.log4j.SimpleLayout
# log4j.appender.FILE2=org.apache.log4j.FileAppender
# log4j.appender.FILE2.file=${CATALINA.HOME}/logs/file1.html
# log4j.appender.FILE2.layout= org.apache.log4j.HTMLLayout
#log4j.appender.FILE3=org.apache.log4j.FileAppender
#log4j.appender.FILE3.file=${CATALINA.HOME}/logs/file3.log
#log4j.appender.FILE3.layout= org.apache.log4j.PatternLayout
#log4j.appender.FILE3.layout.ConversionPattern=-------%p%n%c%n%m%n%d%n%l%n%----n%
log4j.rootLogger=INFO, Console, infoLog
#配置日志信息输出目的地 log4j.appender.appenderName = fully.qualified.name.of.appender.class
# 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.appender.Console=org.apache.log4j.ConsoleAppender
#配置日志信息的格式 log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class
# 1.org.apache.log4j.HTMLLayout(以HTML表格形式布局),
# 2.org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
# 3.org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
# 4.org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
#灵活地指定布局模式的格式
log4j.appender.Console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p: %c#%M %x: %m%n
#log4j.logger.org=DEBUG
log4j.logger.net.sf.ehcache=INFO
#观察security的执行情况
log4j.logger.org.springframework.security=INFO
#
#log4j.logger.org.apache=DEBUG
log4j.logger.org.apache.myfaces.shared_impl.renderkit.html=INFO
#log4j.logger.org.dbunit=DEBUG
#让 SQL语句输出到 Log4J 或是 Slf4J 日志中
log4j.logger.org.hibernate=INFO
log4j.logger.org.springframework=INFO
#指定com.tm包下的所有类的等级为DEBUG
log4j.logger.com.tz=INFO
log4j.logger.org.apache.struts2.json=INFO
log4j.logger.java.sql.Connection=INFO
log4j.logger.java.sql.Statement=INFO
log4j.logger.java.sql.PreparedStatement=INFO
#为了在打印台中打印出sql语句中的具体值
#log4j.logger.org.hibernate.type=TRACE
#log4j.logger.org.hibernate.sql=TRACE
#log4j.logger.org.hibernate.type.descriptor.sql.BasicBinder=TRACE
#log4j.logger.org.hibernate.type.descriptor.sql.BasicExtractor=TRACE
#org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
log4j.appender.infoLog = org.apache.log4j.DailyRollingFileAppender
#指定日志消息的输出最低层次。
log4j.appender.infoLog.Threshold = INFO
#配置日志信息的格式
log4j.appender.infoLog.layout = org.apache.log4j.PatternLayout
#灵活地指定布局模式的格式
log4j.appender.infoLog.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS} %-5p: %c#%M %x: %m%n
#指定消息输出到文件
log4j.appender.infoLog.File = ../server/default/log/moonhong/info
#生成文件的格式
log4j.appender.infoLog.DatePattern = '_'yyyy-MM-dd'.log'
# Log4j中有三个主要的组件,它们分别是 Logger、Appender和Layout,Log4j 允许开发人员定义多个Logger,每个Logger拥有自己的名字,Logger之间通过名字来表明隶属关系
log4j.logger.log.cas=ERROR,RollingFileForCAS
#org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
log4j.appender.RollingFileForCAS=org.apache.log4j.RollingFileAppender
#后缀可以是KB, MB 或者是 GB. 在日志文件到达该大小时,将会自动滚动,即将原来的内容移到mylog.log.1文件。
log4j.appender.RollingFileForCAS.MaxFileSize=20MB
#指定可以产生的滚动文件的最大数
log4j.appender.RollingFileForCAS.MaxBackupIndex=20
#指定消息输出到文件
log4j.appender.RollingFileForCAS.File=../server/default/log/moon/cas_log.log
#布局自定义格式
log4j.appender.RollingFileForCAS.layout=org.apache.log4j.PatternLayout
#格式名 含义
# %c 输出日志信息所属的类的全名
# %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy-MM-dd HH:mm:ss },输出类似:2002-10-18- 22:10:28
# %f 输出日志信息所属的类的类名
# %l 输出日志事件的发生位置,即输出日志信息的语句处于它所在的类的第几行
# %m 输出代码中指定的信息,如log(message)中的message
# %n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”
# %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL。如果是调用debug()输出的,则为DEBUG,依此类推
# %r 输出自应用启动到输出该日志信息所耗费的毫秒数
# %t 输出产生该日志事件的线程名
log4j.appender.RollingFileForCAS.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p (%F:%L) - %m%n
log4j.logger.log.casFilter=ERROR,RollingFileForCasFilter
log4j.appender.RollingFileForCasFilter=org.apache.log4j.RollingFileAppender
log4j.appender.RollingFileForCasFilter.MaxFileSize=20MB
log4j.appender.RollingFileForCasFilter.MaxBackupIndex=20
log4j.appender.RollingFileForCasFilter.File=../server/default/log/moon/casFilter_log.log
log4j.appender.RollingFileForCasFilter.layout=org.apache.log4j.PatternLayout
log4j.appender.RollingFileForCasFilter.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p (%F:%L) - %m%n
log4j.logger.log.loginFilter=ERROR,RollingFileForLoginFilter
log4j.appender.RollingFileForLoginFilter=org.apache.log4j.RollingFileAppender
log4j.appender.RollingFileForLoginFilter.MaxFileSize=20MB
log4j.appender.RollingFileForLoginFilter.MaxBackupIndex=20
log4j.appender.RollingFileForLoginFilter.File=../server/default/log/moon/loginFilter_log.log
log4j.appender.RollingFileForLoginFilter.layout=org.apache.log4j.PatternLayout
log4j.appender.RollingFileForLoginFilter.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5p (%F:%L) - %m%n
完整配置示例如下
log4j.rootLogger=DEBUG,CONSOLE,A1,A2,A3
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=debug
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss} %c %-5p %m%n
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.File=../logs/debug.log
log4j.appender.A1.Threshold=DEBUG
log4j.appender.A1.ImmediateFlush=true
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %-25c -> %m%n
log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A2.File=../logs/log.log
log4j.appender.A2.Threshold=INFO
log4j.appender.A2.ImmediateFlush=true
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %-25c -> %m%n
log4j.appender.A3=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A3.File=../logs/error.log
log4j.appender.A3.Threshold=ERROR
log4j.appender.A3.ImmediateFlush=true
log4j.appender.A3.layout=org.apache.log4j.PatternLayout
log4j.appender.A3.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss} %-5p %-25c -> %m%n
log4j.logger.org.springframework=WARN
log4j.logger.org.apache.commons.httpclient=WARN
log4j.logger.org.mybatis=WARN