(一)问候 Log4j 你好
第一节: Log4j 简介
Log4j -------- log for java(java的日志) 是java主流的日志框架,提供各种类型,各种存储,各种格式,多样化的日志服务;
在爬虫领域,主要用于记录爬虫的执行过程,方便排查爬虫执行错误问题;
详细介绍 参考百度百科
http://baike.baidu.com/link?url=FCidaDzCVSgeIl1Yw7CyufySJLQvd4n3QCusbnTTTxqdg1EYdg59Kd-Hm5gyCdkgNMaYQvmUVXMxxf3k2Pnwdq
第二节: Log4j HelloWorld 实现
建立一个简单的maven项目
pox.xml引入log4j
1 <!-- https://mvnrepository.com/artifact/log4j/log4j --> 2 <dependency> 3 <groupId>log4j</groupId> 4 <artifactId>log4j</artifactId> 5 <version>1.2.17</version> 6 </dependency>
log4j.properties
1 log4j.rootLogger=DEBUG, Console ,File 2 3 #Console 4 log4j.appender.Console=org.apache.log4j.ConsoleAppender 5 log4j.appender.Console.layout=org.apache.log4j.PatternLayout 6 log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n 7 8 #File 9 log4j.appender.File = org.apache.log4j.FileAppender 10 log4j.appender.File.File = D://log2.log 11 log4j.appender.File.layout = org.apache.log4j.PatternLayout 12 log4j.appender.File.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n
上面配置文件是把Debug信息输出到控制台和本地文件
指定布局格式以及输出地址 具体含义后面会详细讲解
Test.java
1 package com.wishwzp.log4j; 2 3 import org.apache.log4j.Logger; 4 5 /** 6 * Log4j测试类 7 * @author ainio 8 * 9 */ 10 public class Test { 11 12 private static final Logger logger = Logger.getLogger(Test.class); // 获取logger实例 13 14 public static void main(String[] args) { 15 16 logger.info("普通Info信息"); 17 logger.debug("调试debug信息"); 18 logger.error("报错error信息"); 19 logger.warn("警告warn信息"); 20 logger.fatal("严重错误fatal信息"); 21 22 logger.error("报错信息", new IllegalArgumentException("非法参数")); 23 } 24 25 }
运行输出:
2017-06-19 15:06:34,398 [main] INFO [com.wishwzp.log4j.Test] - 普通Info信息
2017-06-19 15:06:34,399 [main] DEBUG [com.wishwzp.log4j.Test] - 调试debug信息
2017-06-19 15:06:34,399 [main] ERROR [com.wishwzp.log4j.Test] - 报错error信息
2017-06-19 15:06:34,399 [main] WARN [com.wishwzp.log4j.Test] - 警告warn信息
2017-06-19 15:06:34,399 [main] FATAL [com.wishwzp.log4j.Test] - 严重错误fatal信息
2017-06-19 15:06:34,400 [main] ERROR [com.wishwzp.log4j.Test] - 报错信息
java.lang.IllegalArgumentException: 非法参数
at com.wishwzp.log4j.Test.main(Test.java:22)
本地D盘也会有一个log2.log日志文件 打开 也会有对应的日志信息