程序日志,这个普通却又扮演这重要角色朋友。为何称之为朋友,是因为在程序或项目正式发布的时候,你更多的时候是跟它接触。 人非圣贤,孰能无过。做为开发人员的我们,就得有强行接锅的能力;这锅不管是大的小的,别人的还是自己的,统统得接。接得好不好,就决定了你脸的大小(接不住就被打嘛)。道理就是这样,日志记录方式的好坏,直接影响你对问题的判断和定位。日志记录大家都会认为简单,但如何通过日志可以高效定位问题并不是简单的事情。下面正式谈论正题。 SLF4J:即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统。 Log4j:是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。 以上是官方解释,是有点生硬。简单些说Log4j是实现日志记录,SLF4J做为包装工具,使Log4j表现更好些。选着两者的组合,其实也是目前比较流行的方式。当然除了这些,还有别的日志解决方案;对于我们来说,好用,够用就行。这篇先简单介绍下。
程序日志,这个普通却又扮演这重要角色朋友。为何称之为朋友,是因为在程序或项目正式发布的时候,你更多的时候是跟它接触。 人非圣贤,孰能无过。做为开发人员的我们,就得有强行接锅的能力;这锅不管是大的小的,别人的还是自己的,统统得接。接得好不好,就决定了你脸的大小(接不住就被打嘛)。道理就是这样,日志记录方式的好坏,直接影响你对问题的判断和定位。日志记录大家都会认为简单,但如何通过日志可以高效定位问题并不是简单的事情。下面正式谈论正题。
SLF4J:即简单日志门面(Simple Logging Facade for Java),不是具体的日志解决方案,它只服务于各种各样的日志系统。 Log4j:是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
以上是官方解释,是有点生硬。简单些说Log4j是实现日志记录,SLF4J做为包装工具,使Log4j表现更好些。选着两者的组合,其实也是目前比较流行的方式。当然除了这些,还有别的日志解决方案;对于我们来说,好用,够用就行。这篇先简单介绍下。