`
wm_jeye
  • 浏览: 2932 次
  • 性别: Icon_minigender_1
  • 来自: 徐州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Log4j如何解析配置文件

阅读更多
新建java项目,引入log4j-1.2.16.jar;
在src下创建配置文件log4j.properties,写入如下内容
log4j.rootLogger=debug,appender1  
log4j.appender.appender1=org.apache.log4j.ConsoleAppender    
log4j.appender.appender1.layout=org.apache.log4j.TTCCLayout

编写java代码如下:
import org.apache.log4j.Logger;

public class HelloWorldLog4j {

	/**
	 * @param args
	 */
	private static Logger logger = Logger.getLogger(HelloWorldLog4j.class);
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		logger.debug("hello, log4j");
	}

}

运行HelloWorldLog4j控制台将打印
[main] DEBUG HelloWorldLog4j - hello, log4j

配置文件解析过程如下:
Logger.getLogger方法内调用LogManager.getLogger(clazz.getName())方法,要想调用LogManager.getLogger必须初始化类LogManager,初始化会执行LogManager类的静态语句块,就是在此静态语句块内完成的配置文件加载操。在静态语句块内使用当前类加载器的getResource方法获得URL对象,先默认搜索log4j.xml,如果不存在,再搜索log4j.properties,得到log4j.properties的绝对路径,如果得到的xml文件则使用OptionConverter类的instantiateByClassName静态方法解析配置文件,否则使用PropertyConfigurator类的doConfigure解析配置文件,然后根据解析的配置文件得到LoggerRepository,就可以根据HelloWorldLog4j的类名获得一个日志对象。
分享到:
评论

相关推荐

    Log4J_全能配置文件.pdf

    ### Log4J 全能配置文件详解 #### 一、概述 Log4J是一款非常流行的Java日志框架,被广泛应用于各种规模的应用程序中。它提供了灵活的日志记录机制,可以将日志输出到不同的目的地,如控制台、文件、数据库等,并且...

    log4j的配置文件.zip

    `log4j.properties`文件是Log4j的核心配置文件,它定义了日志输出的行为,包括日志级别、输出目的地、格式以及过滤规则等。 在`log4j.properties`文件中,有以下几个关键知识点: 1. **日志级别(Logging Levels)...

    mybatis配置文件以及日志文件Log4j

    通过配置Log4j,可以打印出SQL语句及其执行时间,这对于调试和性能分析非常有帮助。例如,你可以配置Log4j的日志输出级别为DEBUG,那么在运行时,MyBatis会打印出每个SQL语句及其参数,便于查看和调试。 在实际项目...

    log4j使用jar包和log4j.properties配置文件

    本文将详细探讨Log4j的使用,主要关注1.2.17版本的jar包以及配置文件`log4j.properties`。 ### 1. Log4j简介 Log4j是一个开源的日志组件,支持多种输出格式,如控制台、文件、数据库等。它的核心概念包括Logger、...

    log4j配置和加载方法

    Log4j支持多种配置文件格式,包括`.properties`和`.xml`。两种格式在功能上并无本质区别,选择哪种取决于个人或团队的偏好。 1. **.properties格式**: 在`.properties`文件中,配置信息通过键值对的形式呈现,如...

    Log4j配置文件解析以及加载自己的配置文件.doc

    本文将深入解析Log4j配置文件的主要元素及其用法。 1. **根日志器配置**: `log4j.rootLogger`用于定义日志信息的全局默认处理级别和输出目标。例如,`log4j.rootLogger=INFO, stdout, R`表示将所有级别为INFO及...

    Log4j配置文件详细说明

    首先,Log4j的配置文件通常是`log4j.properties`或`log4j.xml`,用于定义日志输出的行为。这里我们主要讨论基于文本格式的`log4j.properties`。在这个文件中,你可以设置不同的日志级别(DEBUG, INFO, WARN, ERROR, ...

    log4j实用配置扩展

    log4j的主要优势在于其灵活性和可扩展性,允许用户通过配置文件自定义日志记录的方式,无需修改应用程序代码。 #### 二、日志记录的目的 在应用程序中记录日志主要有以下三个目的: 1. **监视代码中变量的变化...

    Log4j配置文件

    ### Log4j配置文件详解 #### 一、概述 Log4j是一款开源的日志记录工具,广泛应用于Java应用程序中。其强大的配置灵活性使得开发者能够轻松地定制日志记录的细节,如日志级别、输出目的地及日志信息的格式等。本文...

    log4j及配置文件

    总结来说,Log4j是Java应用中不可或缺的工具,它通过`log4j.properties`配置文件实现了强大的日志管理,使得开发者能够轻松控制日志输出,提升开发效率,同时对系统运行状态进行有效监控。理解并熟练掌握Log4j的配置...

    log4j(内含log4j的jar包和log4j的配置文件:有DEBUG和INFO两种)

    标题提到的是"log4j(内含log4j的jar包和log4j的配置文件:有DEBUG和INFO两种)",这表明我们讨论的是一个关于日志管理的工具——Log4j,它是一个广泛使用的Java日志框架。其中包含的jar包是Log4j的运行库,而配置文件...

    log4j.properties配置详解

    3. **通过环境变量传递配置文件名**:利用Log4j默认的初始化过程进行解析和配置。 4. **通过应用服务器配置传递配置文件名**:利用一个特殊的servlet来完成配置。 #### 六、为不同的Appender设置日志输出级别 在...

    log4j中配置日志文件相对路径方法分析

    这样,我们就可以在log4j加载配置文件之前,先用System.setProperty ("WORKDIR", WORKDIR);设置好根路径,此操作可通过一初始的servlet进行。 方法二、 可以使用服务器环境变量 log4j的配置文件支持服务器的vm的...

    一个比较全的的log4j配置文件

    根据提供的标题、描述、...通过以上分析,我们可以看到log4j配置文件的强大之处在于能够灵活地控制日志的记录方式、格式以及输出目标,这对于开发高质量的应用程序来说是非常重要的。希望这些知识点能对你有所帮助。

    log4j的jar包和配置文件

    在Mybatis的配置文件`mybatis-config.xml`中,可以通过`<settings>`标签的`logImpl`属性设置日志实现: ```xml <setting name="logImpl" value="LOG4J"/> ``` 这样,Mybatis的动态SQL执行过程中的信息将通过Log...

    Log4j日志配置说明,Log4j日志配置说明

    这个 Servlet 的作用是在应用启动时读取配置文件并初始化 Log4j。具体步骤如下: ```java package ttzl.log.web; import javax.servlet.http.HttpServlet; import org.apache.log4j.PropertyConfigurator; public...

    log4j多文件输出打印

    例如,在`log4j.properties`配置文件中,我们可以创建两个Appender,分别设置它们的输出目标为`error.log`和`info.log`: ```properties # 定义一个名为ERROR的Appender,用于记录错误级别及以上的日志 log4j....

    log4j的配置示例

    首先,Log4j的核心在于其配置文件——`log4j.properties`或`log4j.xml`,这决定了日志输出的级别、格式和目的地。配置文件的基本结构包括定义日志输出的Appender(输出目的地,如控制台、文件、电子邮件等)和设置...

    log4j的jar包以及配置文件

    在"压缩包子文件的文件名称列表"中没有具体的配置文件,但通常来说,Log4j的配置文件名为`log4j.properties`或`log4j.xml`。以下是一个简单的`log4j.properties`配置示例: ``` # 设置root logger级别为INFO,输出...

Global site tag (gtag.js) - Google Analytics