1.添加log4j-1.2.17.jar包
2.定义配置文件log4j.properties,将其放在src即classpath目录下
-
配置rootLogger:
log4j.rootLogger=[level],apperderName1,apperderName1,...
-
level是日志的优先级,从低到高分别是:ALL,DEBUG,INFO,WARN,ERROR,FATAL,OFF(加粗的四种最为常用)
-
appender值日志输出的地方,可指定多个
-
配置Appender:
log4j.appender.appenderName=fully.qualified.name.of.appender.class
-
log4j提供以下几种appender
- org.apache.log4j.ConsoleAppender(控制台)
- org.apache.log4j.FileAppender(文件)
- org.apache.log4j.DailyRollingFileAppender(每天一个文件)
- org.apache.log4j.RollingFileAppender(文件大小达到上限后产生新的文件)
- org.apache.log4j.WriterAppender(输出流)
-
配置layout:
log4j.appender.appenderName.layout=fully.qualified.name.of.layout.class
-
log4j提供以下几种layout:
- org.apache.;og4j.HTMLLayout(HTML表格)
- org.apache.;og4j.PatternLayout(自定义灵活布局)
- org.apache.;og4j.SimpleLayout(信息级别和信息字符串)
- org.apache.;og4j.TTCCLayout(时间,线程,类别等)
-
格式化日志信息,参数如下
- %m 输出代码中指定信息
- %p 输出优先级
- %r 输出自应用启动到输出该log信息耗费的毫秒数
- %c 输出所在类的全名
- %t 输出线程名
- %n 输出一个回车换行符
- %d 输出日期
- %l 输出发生位置,包括类名,线程,代码行数
-示例
# 这里是注释部分 log4j日志的配置文件 key = value
# 1. 配置rootLogger = 级别, 输出的位置 , ...
# 日志级别 Log4j建议只使用四个级别:ERROR、WARN、INFO、DEBUG。
log4j.rootLogger = debug, console, rollingFile, dailyFile
# 2. 配置日志的输出位置 log4j.appender.appenderName自定义的 = Appender的类型
# 2.1 输出日志内容至控制台
log4j.appender.console = org.apache.log4j.ConsoleAppender
# 3.设置日志输出的格式 log4j.appender.appenderName.layout = Layout的类型
# 3.1 简单日志输出格式
#log4j.appender.console.layout = org.apache.log4j.SimpleLayout
# 3.2 html日志格式 输出内容太多 不实用
#log4j.appender.console.layout = org.apache.log4j.HTMLLayout
# 3.3 自定义日志的输出格式 推荐使用
log4j.appender.console.layout = org.apache.log4j.PatternLayout
log4j.appender.console.layout.conversionPattern = %d [%p] %t %c -- %m%n
# 2.2 输出到文件 滚动输出 文件达到一定大小之后 重新生成新的文件 org.apache.log4j.RollingFileAppender
log4j.appender.rollingFile = org.apache.log4j.RollingFileAppender
# 设置文件的目录以及文件 名
log4j.appender.rollingFile.file = d:/logs/ajax_page.log
# 设置文件最大存储大小 超出大小重新创建文件 单位byte
log4j.appender.rollingFile.maxFileSize = 102400
# 设置最多存储的文件的数量
log4j.appender.rollingFile.maxBackupIndex = 100
log4j.appender.rollingFile.layout = org.apache.log4j.PatternLayout
log4j.appender.rollingFile.layout.conversionPattern = %d [%p] %t %c -- %m%n
# 2.3 每天生成一个日志文件
log4j.appender.dailyFile = org.apache.log4j.DailyRollingFileAppender
log4j.appender.dailyFile.file = d:/logs/ajax_page_daily.log
log4j.appender.dailyFile.datePattern = yyyy-MM-dd
log4j.appender.dailyFile.layout = org.apache.log4j.PatternLayout
log4j.appender.dailyFile.layout.conversionPattern = %d [%p] %t %c -- %m%n