日志框架选型

一、Java日志框架选型

标准

1本组件强壮性

官方宣称的,各大牛点评的,扩展性

2使用广泛性

各系统集成,使用时间

3业务系统

新的好办,旧的要兼容

4可选性

只有一类实现,要么自己造,要么只能用



二、对比

Log4j LOGBack java.util.Logging SLF4J Apache Common-Logging

Log4j Apache的一个开放源代码项目,使用最广泛

LOGBack Logback是由log4j创始人设计的又一个开源日记组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个改良版本。此外logback-classic完整实现SLF4J API使你可以很方便地更换成其它日记系统如log4j或JDK14 Logging。logback-access访问模块与Servlet容器集成提供通过Http来访问日记的功能。

java.util.Logging

Java Logging API是sun公司于2002年5月正式发布的。它是自J2SE 1.4版本开始提供的一个新的应用程序接口

SLF4J 简单统一的接口 simple log facade for java

简单日记门面(Facade)SLF4J是为各种loging APIs提供一个简单统一的接口,从而使得最终用户能够在部署的时候配置自己希望的loging APIs实现。 Logging API实现既可以选择直接实现SLF4J接的loging APIs如: NLOG4J、SimpleLogger。也可以通过SLF4J提供的API实现来开发相应的适配器如Log4jLoggerAdapter、JDK14LoggerAdapter。
Apache Common-Logging

通过动态查找的机制,在程序运行时自动找出真正使用的日志库



http://blog.sina.com.cn/s/blog_457567880100kffd.html Java日志框架

http://hill007299.iteye.com/blog/1561295 java日志系统



三、使用前测试



四、定结果

在新的项目中,使用SLF4J+Logback是比较好的日志框架选型

旧项目,能转的转,不能转的,只能不转



五、重点学习

http://www.iteye.com/topic/378077 LOG4j

SLF4J+Logback



六、项目中日志输出要求

错误输出要求

1.内容什么业务,什么方法输出,业务唯一数据是什么,区别于其数据,其他业务

2.级别:DEBUG,INFO,ERROR

DEBUG是开发测试,或公网测试,IF ISDEBUG一下,再输入DEBUG;

INFO是生产输出标准

ERROR是错误输出

INFO要求有逻辑的输出,能引导判断程序执行情况,结合业务可读

ERROR能结合业务输出,利于判断问题原因,NULL,超界等



1错误输出不要用e.printStackTrace();输出 , 尽量用 logger.error("派奖时拷贝数据异常,数据ID="+id + e.getMessage(), e);

最好能指明数据唯一标识,判断程序出错原因

2INFO输出,让看日志者能找到程序执行到那,判断出数据逻辑错误过程

3前后说的业务关键字要一样,利于观察者查找 问题

你可能感兴趣的:(技术框架)