log4j

Apache log4j™ 1.2


Why logging?

在你的代码里插入记录日志的语句(下文简称"日志语句")是一种很low的方法。但如果调试工具不可用或者不适用的时候,这却是唯一的选择。这种情况通常发生在分布式的应用中。

另一方面,一些人争论"日志语句"会污染源代码并且会降低可读性(我们却认为恰恰相反)。Java语言不支持预处理,"日志语句"增加了代码的大小,甚至在关闭了日志的时候,都会导致它的速度下降。考虑到一个有合适大小的应用可能会包含上千条"日志语句",速度将会是一个非常重要的问题。

Why log4j?

使用log4j,你可以在运行时使用日志而不用修改应用的二进制文件。Log4j包的出现使得"日志语句"可以保留在XXX的代码中,而不会导致一个严重的性能消耗。不需要修改应用的二进制文件,只通过一个配置文件就可以控制日志的行为。

日志让开发者对应用(运行时的)一些失败有了详细的了解。另一方面,测试为应用提供了质量保证和信心。日志和测试不应该被混淆,它们是互补的。当日志被合理使用时,它绝对会是一个有效的工具。

log4j的一个与众不同的特点是记录器(logger)里的继承机制。使用logger的层次结构,可以很方便地控制哪一种"日志语句"以一个任意细粒度的方式去输出。这有助于减少日志输出的量和记录日志的消耗。

日志输出的目标可以是文件,输出流,Writer,远程的log4j服务器,远程的Unix系统记录线程或者是其他的一些输出目标。


原文:http://logging.apache.org/log4j/1.2/

第一次翻译,请见谅!


你可能感兴趣的:(log4j)