#定义使用的类,rootLogger是新的类,也是推荐使用,#因为rootCategory这个类已经不推荐使用且被rootLogger所替代#"=" 后面的第一个是日志级别,再后面的是输出到哪里,输出目的地的名字可以自定义,它们之间#的逗号不是说定义多个级别。一个语句只能定义一个级别,但是可以有多个输出#日志级别分为:OFF、FATAL、ERROR、INFO、DEBUG、ALL。OFF为不输出日志。如果配置INFO级别,则显示INFOR、WARN、ERROR的日志信息。# debug级别日志输出到steout,D,E log4j.rootLogger = debug,stdout,D,E# INFO级别日志输出到stdout,infologlog4j.rootCategory = INFO,stdout,infolog#log4j提供的appender有如下几种:# org.apache.log4j.ConsoleAppender(控制台)  # org.apache.log4j.FileAppender(文件)  # org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件) # org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件) # org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)#log4js提供的布局有如下几种:# org.apache.log4j.HTMLLayout(以HTML表格形式布局)# org.apache.log4j.PatternLayout(可以灵活地指定布局模式,必须自行设置布局,这里需要用到正则表达式) # org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串) # org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)#log4j常用的Pattern# %d 输出日志的时间日期格式,比如%d[yyyy-MM-dd HH:mm:ss,SSS]# %m 输出代码中指定的消息# %p 输出优先级# %r 输出从应用启动到输出该日志信息耗费的毫秒数# %c 输出所属的类# %t 输出产生日志的线程名称# %n 换行符,Windows为%rn# %I 输出日志事件的发生位置# [] 为log信息的开头,可以是自定义字符#下面看一些实例 ### 输出信息到控制抬 ####定义输出日志到控制台log4j.appender.stdout = org.apache.log4j.ConsoleAppender#定义打印到控制台,上面是定义类型,这个才是真正输出到控制台的动作,平时可以把这行注释掉,你启动#Tomcat然后发送程序不断在控制台输出信息,那么就是这行在起作用,这个也是输出到#catalina.out这个文件的内容log4j.appender.stdout.Target = System.out#定义使用自定义格式log4j.appender.stdout.layout = org.apache.log4j.PatternLayout#定义输出日志的格式,%-5p -表示左对齐,5表示宽度log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n### 输出DEBUG 级别以上的日志到 ####定义每天产生一个日志,该日志为文件形式输出log4j.appender.D = org.apache.log4j.DailyRollingFileAppender#定义日志文件位置log4j.appender.D.File = /work/logs/publicnumberClient_war-8280/logs/infologlog4j.appender.D.Append = true#定义日志输出级别,意思是只输出比DEBUG级别高的日志log4j.appender.D.Threshold = DEBUG log4j.appender.D.layout = org.apache.log4j.PatternLayoutlog4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n### 输出INFOR 级别的日志#每天产生一个文件写日志信息log4j.appender.infolog=org.apache.log4j.DailyRollingFileAppender#这个是定义日志文件位置log4j.appender.infolog.File=/work/logs/publicnumberClient_war-8280/logs/infolog.log#这个是定义文件命名规范,实际的日志文件名称为 infolog.log.年-月-日.loglog4j.appender.infolog.DatePattern='.'yyyy-MM-dd'.log'#定义日志输出使用哪种格式log4j.appender.infolog.layout=org.apache.log4j.PatternLayout#定于具体格式内容log4j.appender.infolog.layout.ConversionPattern=[pnclient][%d{yyyy-MM-dd HH:mm:ss}][%p][%t]%m%n

参考文档

http://blog.csdn.net/azheng270/article/details/2173430/