logging services (以下两个问题答案摘抄自该网站)为什么要使用日志 为什么要使用log4j
Inserting log statements into your code is a low-tech method for debugging it. It may also be the only way because debuggers are not always available or applicable. This is often the case for distributed applications.
On the other hand, some people argue that log statements pollute source code and decrease legibility. (We believe that the contrary is true). In the Java language where a preprocessor is not available, log statements increase the size of the code and reduce its speed, even when logging is turned off. Given that a reasonably sized application may contain thousands of log statements, speed is of particular importance.
无责任直译:
在你的代码中插入日志项对于debug代码来说是一种低技术含量的方法,不过它却是唯一的方法,因为程序猿不可能时时刻刻都能够做事高效或者脑袋灵光,这在分布式应用中通常是典型案例。
然而另一方面,一些人争辩说日志项污染了源代码,并且降低了代码可读性。(我们认为这点确实是真的)。在java语言中,预处理器不高效,都是因为日志项增加了代码量,减小了运行速度,甚至当日志关闭的时候,该情况还是会发生。一个比较合理代码量的应用可能含有成千上万条日志项代码,然而速度可是非常重要的。
With log4j it is possible to enable logging at runtime without modifying the application binary. The log4j package is designed so that these statements can remain in shipped code without incurring a heavy performance cost. Logging behavior can be controlled by editing a configuration file, without touching the application binary.
Logging equips the developer with detailed context for application failures. On the other hand, testing provides quality assurance and confidence in the application. Logging and testing should not be confused. They are complementary. When logging is wisely used, it can prove to be an essential tool.
One of the distinctive features of log4j is the notion of inheritance in loggers. Using a logger hierarchy it is possible to control which log statements are output at arbitrarily fine granularity but also great ease. This helps to reduce the volume of logged output and the cost of logging.
The target of the log output can be a file, an OutputStream, a java.io.Writer, a remote log4j server, a remote Unix Syslog daemon, or many other output targets.
无责任直译:
不需要修改应用分支项,log4j就可以加快日志项运行时的速度。设计出log4j包主要是为了让日志项能保存于一个装载代码中,并且不需要巨大的消耗。通过编辑构造文件就能控制日志的表现,这不需要修改应用分支。(未翻译完 觉得没必要 自己看懂了就行了)
Log4j介绍
Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式,通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。
Log4j组件构成
Log4j由三个重要的组件构成:
1.日志信息的优先级(Logger)
2.日志信息的输出目的地(Appender)
3.日志信息的输出格式(Layout)。
概要:
日志信息的优先级从高到低有ERROR、WARN、 INFO、DEBUG,分别用来指定这条日志信息的重要程度;
日志信息的输出目的地指定了日志将打印到控制台还是文件中;
而输出格式则控制了日志信息的显示内容。
Log4j配置文件的格式
Log4j支持两种配置文件格式:
1. XML格式的文件
2. properties格式的文件
也可以完全不使用配置文件,而是在代码中配置Log4j环境。但是,使用配置文件将使您的应用程序更加灵活。
以上摘抄自http://www.cnblogs.com/dennisit/archive/2013/01/01/2841603.html
相关推荐
本篇文章将深入探讨Log4j的入门知识和核心特性。 ### 1. Log4j简介 Log4j是基于Java的日志框架,最初由Ceki Gülcü设计,旨在提供灵活且高效的日志记录解决方案。Log4j提供了丰富的配置选项,可以控制日志信息的...
在本文中,我们将深入探讨如何通过一个简单的入门程序来理解并使用 log4j。 1. **配置 Log4j** - **log4j.properties**:这是 Log4j 的核心配置文件,决定了日志的输出级别、输出格式以及输出目标(控制台、文件、...
【Log4j入门学习笔记】 Log4j是一个广泛使用的Java日志框架,旨在解决程序开发中日志记录的复杂性和可维护性问题。它提供了一种灵活的方式来控制日志信息的输出格式、输出级别和输出位置,使得在调试、监控和故障...
**标题:** Log4j教程 ...通过理解Log4j的基本组件和配置,开发者可以有效地利用它来监控和调试应用程序,同时保证系统的稳定性和安全性。对于Java开发人员来说,掌握Log4j的使用是必不可少的技能之一。
《Commons-Logging + Log4j 入门指南》 在Java编程中,日志记录是必不可少的一部分,它有助于调试、性能分析以及故障排查。Apache Commons Logging和Log4j是两个广泛使用的日志框架,本指南将深入讲解如何将它们...
Log4j是Java编程语言中广泛使用的日志记录框架,它提供了一套强大且灵活的日志记录机制,使得开发者能够方便地跟踪和调试应用程序的运行状态。...在实际开发中,理解并熟练运用Log4j能够显著提高工作效率。
本文将深入探讨Log4j的基础知识、配置和使用实例,帮助初学者快速入门。 首先,理解Log4j的核心概念至关重要。Log4j主要由三部分组成:Logger(日志器)、Appender(输出端)和Layout(布局)。Logger用于记录日志...
**标题:“Log4j入门配置”** 在Java开发中,日志记录是不可或缺的一部分,它帮助开发者追踪程序运行状态、定位错误和调试问题。Log4j是Apache组织提供的一款强大的日志框架,广泛应用于各种Java项目。这篇博客将...
"log4j入门程序,免费下载。需要log4j-1.2.15.jar" 描述了这个程序是初学者学习Log4j的入门示例,用户可以免费下载。"log4j-1.2.15.jar" 是Log4j的一个特定版本,表明该程序依赖于这个版本的库文件来运行。这个版本...
通过《log4j从入门到详解》这份教程,读者不仅能够掌握log4j的基本用法,还能深入理解日志管理在软件开发中的重要性,提升问题排查和系统监控的能力。同时,对于想要深入研究日志处理和分布式系统监控的开发者来说,...
### Log4j入门指南知识点详解 #### 一、引言 在软件开发过程中,日志(Log)记录是一项不可或缺的功能。良好的日志管理不仅能帮助开发者快速定位问题所在,还能为后期的系统维护提供便利。本篇内容主要围绕Log4j进行...
### log4j入门与精通教程 #### 一、引言 在软件开发过程中,日志记录是一项非常重要的功能。它不仅能够帮助开发者更好地理解和追踪应用程序的行为,还能够在系统出现故障时提供关键信息以便进行问题诊断。传统的...
通过上述步骤,我们可以完成Log4j的快速入门。实际上,Log4j的功能远不止如此,它还支持多种高级特性,比如按文件大小切割日志文件、异步日志记录等,以适应更复杂的应用场景。对于想深入了解Log4j的开发者来说,...
本篇文章将带你深入理解Log4j,从基础概念到高级特性,帮助你熟练掌握这一强大的日志框架。 1. **Log4j概述** - Log4j是一个用于记录Java应用程序运行时信息的框架,它的设计理念是灵活性、可配置性和性能。 - 它...
07.Log4J.ppt提供了可视化讲解,涵盖Log4j的基本概念、配置示例、使用方法以及实际案例,有助于理解Log4j的工作原理和实践操作。 **5. 入门工程分析** - **itcastLog4J**:这个工程是一个简单的Java应用,包含了一...
这篇入门文档适合初学者和需要快速查阅log4j基本用法的开发者。 1. **Log4j 的组件介绍** - **Loggers**:Loggers 是日志记录的核心组件,它们负责接收日志事件并决定是否应该处理这些事件。Loggers 有一个层次...
首先,我们需要理解Log4j的基本概念。Log4j由三个主要组件构成:Logger(日志器)、Appender(输出端)和Layout(布局)。Logger用于生成日志消息,Appender负责将这些消息输出到指定的位置,而Layout则决定了日志...