前导
log4j是一个用Java编写的可靠,快速和灵活的日志框架(API),它在Apache软件许可下发布。
Log4j已经被移植到了C,C++,C#,Perl,和Ruby等语言中。
Log4j是高度可配置的,并可通过在运行时的外部文件配置。它根据记录的优先级别,并提供机制,以指示记录信息到许多的目的地,诸如:数据库,文件,控制台,UNIX系统日志等。
Log4j中有三个主要组成部分:
- loggers:负责捕获记录信息。
- appenders :负责发布日志信息,以不同的首选目的地
- layouts:负责格式化不同风格的日志信息。
Log4J特性:
log4j的是线程安全的
log4j是经过优化速度的
log4j是基于一个名为记录器的层次结构
log4j的支持每个记录器多输出追加器(appender)
log4j支持国际化。
log4j并不限于一组预定义的设备
日志行为可以使用配置文件在运行时设置log4j设计从一开始就是处理Java异常log4j使用多个层次,ALL,TRACE,DEBUG,INFO,WARN,ERROR和FATAL
日志输出的格式可以通过扩展Layout类容易地改变日志输出的目标,以及在写入策略可通过实现Appender程序接口改变log4j 会故障停止。然而,尽管它肯定努力确保传递,log4j不保证每个日志语句将被传递到目的地
日志记录的优缺点
日志是软件开发的重要组成部分。一个精心编写的日志代码提供快速的调试,维护方便,以及应用程序的运行时信息结构化存储。
日志记录确实也有它的缺点。它可以减缓的应用程序。如果太详细,它可能会导致滚动失明。为了减轻这些影响,log4j被设计为是可靠,快速和可扩展。
由于记录很少为应用的主要重点,但log4j API致力于成为易于理解和使用