一、基本配置
// 指定日志级别和输出配置别名,别名可有多个
log4j.rootLogger = [ level ] , alis_1, alis_2, …
//输出方式,表示每天产生一个日志文件
log4j.appender.alis_1 = org.apache.log4j.DailyRollingFileAppender
//表示将日志输出到D盘符下面的logger文件夹中
log4j.appender.alis_1 .File = D:/logger/error.log
//在文件的后面添加一个日期格式的名字,即生成的日志文件都会在后面有一个日期的名字
log4j.appender.alis_1 .DatePattern='.'yyyy-MM-dd
//表示日志是追加的,不是重写的,如果不设置的话,一个log日志中,可能会只出现一条日志记录
log4j.appender.alis_1 .Append = true
//设置日志级别
log4j.appender.alis_1 .Threshold = ERROR
//可以灵活的制定布局模式
log4j.appender.alis_1 .layout = org.apache.log4j.PatternLayout
//布局模式,日志以某种格式输出
log4j.appender.alis_1 .layout.ConversionPattern = %n%d%p[%c]-%m
//表示最大的日志文件时多少,当超过这个限制的时候,就创建一个新的文件
log4j.appender.alis_1 .MaxFileSize= 1024KB
#配置日志信息输出目的
org.apache.log4j.ConsoleAppender(控制台)
org.apache.log4j.FileAppender(文件)
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
#配置日志信息的格式
org.apache.log4j.HTMLLayout(以HTML表格形式布局),
org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
#日记记录的优先级:priority,优先级由高到低分为
OFF >FATAL >ERROR >WARN >INFO >DEBUG >ALL。
Log4j建议只使用FATAL ,ERROR ,WARN ,INFO ,DEBUG这五个级别。
ERROR 为严重错误 主要是程序的错误
WARN 为一般警告,比如session丢失
INFO 为一般要显示的信息,比如登录登出
DEBUG 为程序的调试信息
#输出格式:layout中的参数都以%开始,后面不同的参数代表不同的格式化信息(参数按字母表顺序列出):
%c 输出所属类的全名,可在修改为 %d{Num} ,Num类名输出的维(如:"com.test.logger.ClassName",%C{2}将输出logger.ClassName)
%d 输出日志时间其格式为 %d{yyyy-MM-dd HH:mm:ss,SSS},可指定格式
如 %d{HH:mm:ss}
%l 输出日志事件发生位置,包括类目名、发生线程,在代码中的行数
%n 换行符
%m 输出代码指定信息,如info(“message”),输出message
%p 输出优先级,即 FATAL ,ERROR 等
%r 输出从启动到显示该log信息所耗费的毫秒数
%t 输出产生该日志事件的线程名
二、多文件配置
定义多个logger,在后台记录的时候,根据这个logger获取记录日志源,然后分别取记录到不同的文件中
log4j.rootLogger=INFO,info
log4j.logger.errorlog= ERROR,error
log4j.logger.debug= DEBUG,debug
示例:
1 2 log4j.rootLogger=dealisug, alis 3 4 log4j.appender.alis = org.apache.log4j.DailyRollingFileAppender 5 log4j.appender.alis.File = /home/ywyd/log/ywyd_client_error.log 6 log4j.appender.alis.DatePattern='.'yyyy-MM-dd 7 log4j.appender.alis.Append = true 8 log4j.appender.alis.Threshold = ERROR 9 log4j.appender.alis.layout = org.apache.log4j.PatternLayout 10 log4j.appender.alis.layout.ConversionPattern = %n%d%p[%c]-%m 11 log4j.appender.alis.MaxFileSize= 1024Kalis 12
log4j.rootLogger=ERROR, error log4j.logger. debuglog = DEBUG, debug log4j.appender.error = org.apache.log4j.DailyRollingFileAppender log4j.appender.error.File = G:/gameoperators/ywyd_gameoperators_error.log log4j.appender.error.DatePattern='.'yyyy-MM-dd log4j.appender.error.Append = true log4j.appender.error.Threshold = ERROR log4j.appender.error.layout = org.apache.log4j.PatternLayout log4j.appender.error.layout.ConversionPattern = %n%d%p[%c]-%m log4j.appender.rootLogger.MaxFileSize=10240KB log4j.appender.debug = org.apache.log4j.DailyRollingFileAppender log4j.appender.debug.File = G:/gameoperators/ywyd_gameoperators_debuglog.log log4j.appender.debug.DatePattern='.'yyyy-MM-dd log4j.appender.debug.Append = true log4j.appender.debug.Threshold = INFO log4j.appender.debug.layout = org.apache.log4j.PatternLayout log4j.appender.debug.layout.ConversionPattern = %n%d%p[%c]-%m log4j.appender.debuglog.MaxFileSize=10240KB