首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

log4j的引见与使用

2012-11-23 
log4j的介绍与使用日志技术 (Log4J)日志:系统的运行信息 称为日志 ---- 日志功能主要用于系统调试和后期维

log4j的介绍与使用

日志技术 (Log4J)
日志:系统的运行信息 称为日志 ---- 日志功能主要用于系统调试和后期维护
开发中经常使用System.out 用于向控制台输出 ,System.err 用来输出异常信息
* 采用System.out 向控制台输出信息,保存在日志文件中
日志技术,通过输出级别来控制信息输出,级别可以配置的,开发时将级别定义调试级别,看到调试信息输出,系统运行时,将级别调高,不会输出调试信息
* 相比System.out 好处  System.out的信息一定会存在于日志文件中, 日志的信息通过级别设置关闭、调整输出
* 企业开发中经常使用日志技术进行调试,取代System.out
Log4J是Apache的开源项目,通过log4j 控制日志输出目的地 (控制台、文件 )

使用Log4J步骤:
1、下载Log4J 开发包
解压 site目录中 查看log4j 网站 index.html
2、导入jar包到工程中
3、编程中使用Log4J

第一部分 : 不用配置文件,使用log4j:
创建Logger 记录器对象
private static final Logger LOG = Logger.getLogger(Log4JTest.class);
记录日志
BasicConfigurator.configure(); // 目标是控制台
public void setlevel(下面介绍了几个常用级别)//设置输出的级别
输出日志信息(常用)
public void debug(Object message); // 调试信息
public void info(Object message); // 普通信息
public void warn(Object message); // 警告信息
public void error(Object message); // 错误信息

设置日志输出级别
日志级别 由高到低 (六个级别): fatal 、error、warn、info、debug、trace
设置级别 :  fatal 、error、warn、info、debug、trace 、off(关闭日志)、all(开启所有级别日志)
注意事项:
输出目标只能输出比你设计级别更高级别日志信息 例如:设置级别是info,控制台可以看到 info 、warn、error、fatal信息
备注: trace和fatal 一般情况下不用
第二部分:Log4j的配置文件
log4j.properties 文件存放在 src根目录
Log4j配置需要三个部件
记录器(Loggers)
输出源(Appenders)
布局(Layouts)

1) log4j.rootLogger 根记录(默认记录器)
语法:log4j.rootLogger = 输出级别,输出源1,输出源2 ...
* 一个记录器可以有一个默认输出级别,配置多个输出源
2) log4j.appender.输出源名称  ----- 用来配置输出源
WriterAppender (字符流输出源,代表可以将日志输入到任何流里)
    -------  FileAppender (输出日志到文件)
                 -------  DailyRollingFileAppender  (每天产生一个日志文件)
                 -------  RollingFileAppender (文件到达指定大小时产生一个新文件)
    -------  ConsoleAppender (输出日志到控制台)

* 常用:FileAppender ConsoleAppender  --- 企业级开发 DailyRollingFileAppender 
3) log4j.appender.A1.layout 设置布局
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
org.apache.log4j.PatternLayout 最常用布局,模式布局 ,你可以根据需要自定义输出日志信息格式
* 如果使用 PatternLayout 必须指定 ConversionPattern 自定义布局模式
log4j.appender.A1.layout.ConversionPattern= %-4r [%t] %-5p %c %x - %m%n
debug 级别:用于程序调试,给程序开发人家看的 (包含,调用方法、调用类、输出关键参数的值)
info 级别: 用于信息显示, 给程序使用者和维护者看 (输出业务相关信息,程序流程信息 )
warn 级别: 警告信息 ,警告不是错误,不会影响运行 (不规范操作、数据)
error 级别:错误信息 ,用于 catch 块内部  try{}catch(e){ 使用 error级别输出日志 }

热点排行