`
sammor
  • 浏览: 413299 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Log4j 学习笔记之三

    博客分类:
  • J2SE
阅读更多

引言:

      理论中浅谈,实践中理解。用例子还实践最为直接和明了的总结了。

需求:

      项目名:LogPro

      文件目录

 

+LogPro  //项目名
    - A.java
    - B.java
    - TestMain.java   //主程序
    +bbb   //文件夹
        -C.java
        -D.java

   其中,A、B、C、D四个文件中有着各自的execute的方法,方法里为日志的输出,如

 

public void execute(){
		log.info("class A info message");
		log.debug("class A debug message");
		log.error("class A error message");
	}

 

   要求:

    一次执行,达下下面的要求:

    1、把A、B、C、D执行的日志信息输出到按制台上

    2、把A、B 的日志信息以a.log的文件输出

    3、把C、D 的日志信息以b.log的文件输出

 

 

具体的代码实现 :(使用的是commons-logging与log4j的结合)

 

public class A {
	//protected Logger log = Logger.getLogger(A.class.getName());
	protected Log log = LogFactory.getLog(A.class); //当前的类
	public void execute(){
		log.info("class A info message"); //里面的A是对这条信息的标识
		log.debug("class A debug message");
		log.error("class A error message");
	}
}

    B、C、D类同上,只是有两处修改,请注意。

 

 

public class TestMain {

	// protected Logger log = Logger.getLogger(TestMain.class.getName());

	public void execute() {
		Log log = LogFactory.getLog(TestMain.class);

		log.info("class TestMain info message");
		log.debug("class TestMain debug message");
		log.error("class TestMain error message");

		A a = new A();
		B b = new B();
		C c = new C();
		D d = new D();

		a.execute();
		b.execute();
		c.execute();
		d.execute();
	}
	
	public static void main(String[] args) {

		TestMain testMain = new TestMain();
		testMain.execute();
	}
}

    测试主类。

 

    配置文件Log4j.properties

 

#print to console
log4j.rootLogger = debug, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t](%r %x  %c) (%F:%L) - %m%n

log4j.logger.A=debug,R
log4j.logger.B=debug,R

#print to file a.log
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=a.log
# Control the maximum log file size
log4j.appender.R.MaxFileSize=100KB
# Archive log files (one backup file here)
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss}:%p %t %c - %m%n 


log4j.logger.bbb.C=debug,R2
log4j.logger.bbb.D=debug,R2
#print to file a.log
log4j.appender.R2=org.apache.log4j.RollingFileAppender
log4j.appender.R2.File=b.log
# Control the maximum log file size
log4j.appender.R2.MaxFileSize=100KB
# Archive log files (one backup file here)
log4j.appender.R2.MaxBackupIndex=1
log4j.appender.R2.layout=org.apache.log4j.PatternLayout
log4j.appender.R2.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss}:%p %t %c - %m%n 

 

运行,测试成功。

P.S 这里面我用的是maven工程,里面的log4.properties是放在classpath的,所以会自动加载,输出的a.log、b.log也是用的相对地址,所以执行后也在项目文件夹里面。

 

END

 

分享到:
评论

相关推荐

    Log4j学习笔记和一套完整定义实例

    **Log4j学习笔记** Log4j是一款广泛应用于Java编程中的日志记录框架,由Apache软件基金会开发。它提供了一套灵活的日志记录系统,帮助开发者在开发过程中追踪应用程序的行为,便于调试、性能分析和问题排查。Log4j...

    log4J学习笔记

    ### log4J学习笔记 #### 一、Apache Commons Logging与log4j及JDK Logger的关系 **Apache Commons Logging** 的设计初衷是为了提供一个简洁统一的日志接口,它并不直接实现日志功能,而是通过桥接的方式支持多种...

    Log4j的学习笔记

    **Log4j学习笔记** Log4j是一款广泛应用于Java编程中的日志记录工具,由Apache软件基金会开发。它提供了一种灵活且强大的机制来记录应用的运行情况,这对于调试、性能分析、问题追踪以及系统监控至关重要。这篇学习...

    log4j 学习笔记

    "log4j 学习笔记" log4j 是一个流行的 Java 日志记录工具, logger 是记录日志信息的基本单元。在 log4j 中, logger 的级别越低,记录的日志信息越详细。 Logger 的级别从低到高依次是:ALL 。 log4j 的日志记录...

    log4j 学习 笔记

    ### Log4j 学习笔记知识点详解 #### 一、Log4j 概述与架构 **Log4j** 是 **Apache** 组织提供的一个开源日志框架,旨在简化应用开发中的日志记录工作。它能够灵活地记录程序运行时的信息,并允许用户自定义日志的...

    Log4J学习笔记

    ### Log4J学习笔记 #### 一、Log4J配置文件的学习 在深入理解Log4J之前,我们先从配置文件入手。Log4J支持多种配置文件格式,其中包括XML和Java特性文件(键=值)。这里我们将重点介绍如何使用Java特性文件作为...

    Log4j 学习笔记.doc

    总的来说,Log4j是一个强大且灵活的日志框架,它的灵活性和可配置性使其成为Java开发者必备的工具之一。通过理解并熟练运用Log4j,我们可以更好地监控和调试应用程序,提高开发效率和维护质量。在学习过程中,参考...

    Log4j学习笔记

    ### Log4j学习笔记 #### 一、Log4j简介 Log4j是Apache的一个开源项目,用于实现日志功能的Java库。它允许开发者控制日志信息的生成、格式和输出目标。Log4j的强大之处在于它的灵活性和扩展性,能够适应不同层次的...

    日志管理Log4j学习笔记

    ### Log4j学习笔记知识点详解 #### 一、Log4j概述 - **定义与功能**:Log4j是Apache组织推出的一个开源日志框架,主要用于控制和管理应用程序中的日志记录过程。它允许开发者非常灵活地配置日志输出的目的地(如...

    log4j学习笔记

    **Log4j 简介** Log4j 是一个广泛使用的开源日志记录框架,由 Apache 软件基金会开发。它为Java应用程序提供了一种灵活的日志记录机制,允许开发者控制日志信息的输出级别、输出目的地以及输出格式。由于其强大的...

    Log4j 学习笔记

    Log4j 的强大之处在于它的可配置性,允许用户根据需求定制日志级别、日志格式以及日志输出的目标。 ### 1. 日志级别 Log4j 提供了多种日志级别,包括: - `DEBUG`:用于调试信息,通常在开发阶段使用。 - `INFO`...

    Log4j入门学习笔记

    【Log4j入门学习笔记】 Log4j是一个广泛使用的Java日志框架,旨在解决程序开发中日志记录的复杂性和可维护性问题。它提供了一种灵活的方式来控制日志信息的输出格式、输出级别和输出位置,使得在调试、监控和故障...

    log4j学习笔记及写入数据库配置

    在学习Log4j的过程中,阅读“log4j学习笔记及写入数据库配置”这份资料将有助于深入理解Log4j的使用,包括具体的配置步骤、常见问题以及最佳实践。通过实践,你可以更好地掌握如何利用Log4j来提升你的应用程序的可...

    Log4j学习笔记,个人整理

    Log4j学习笔记 在软件开发中,日志记录是一个至关重要的部分,它不仅帮助开发者监控程序运行状态,追踪错误,还可以为系统维护提供宝贵的审计信息。Log4j,一个由Apache开发的Java日志框架,是日志记录工具中的佼佼...

    不错的 log4j 学习 笔记

    log4j的学习笔记,网上找到的,写的很不错

    log4j学习笔记.

    Appender是Log4j的核心组件之一,它决定了日志信息将被输出到何处。Log4j提供了多种Appender供选择: - **ConsoleAppender**:将日志信息输出到控制台。 - **FileAppender**:将日志信息写入单个文件。 - **...

    Log4j2学习log4j2.xml配置模板

    Log4j2 配置模板学习笔记 Log4j2 是 Java 语言中一种流行的日志记录工具,它提供了灵活的日志记录管理功能。下面我们将学习 Log4j2 配置模板的使用和配置。 引入 Log4j2 依赖 在使用 Log4j2 之前,需要在 Maven ...

    log4j的学习笔记

    这篇学习笔记主要涵盖了Log4j的三个核心组件:日志记录器(Loggers)、日志级别以及输出端(Appenders)。 首先,日志记录器(Loggers)是Log4j的基础。每个Logger对象都有一个唯一的名字,这个名字通常是类名,...

    Log学习笔记——Log4j配置笔记.md

    Log4j log for java(java的日志) 是java主流的日志框架,提供各种类型,各种存储,各种格式,多样化的日志服务。Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、...

Global site tag (gtag.js) - Google Analytics