`

Log4j入门简介

阅读更多

一、log4j是什么?

        Log4j是一个开源的日志记录组件,其产品已经相当的成熟,且使用非常的广泛。在工程中以易用,方便等代替了 System.out 等打印语句。

        Log4j的目标是:它允许开发人员以任意的精细程度控制哪些日志说明被输出。通过使用外部的配置文件,可以在运行时配置它。

        Log4j的具体在 http://logging.apache.org/log4j/找到它(有使用的文档说明)。另外,log4j已经被转换成 C, C++, C#, Perl, Python, Ruby, 和 Eiffel 语言。

 

二、Log4j搭建

        通常我们建立一个log4j.properties文件放在src下,编译之后就生成在../web-inf/class/当然也可以放到其它任何目录,只要该目录被包含到类路径中即可,中定位这个文件,并读入这个文件完成的配置。这个配置文件告 诉Log4J以什么样的格式、把什么样的信息、输出到什么地方。

 

        Log4j有三个主要的组件:Loggers(记录器),Appenders(输出源)和Layouts(布局),这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松的记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。下面对三个组件分别进行说明:

      

        1、 Logger和Appenders

      Loggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。这五个级别是有顺序的,DEBUG Log4j有一个规则:假设Loggers级别为P,如果在Loggers中发生了一个级别Q比P高,则可以启动,否则屏蔽掉。

 

        假设你定义的级别是info,那么error和warn的日志可以显示而比他低的debug信息就不显示了。其语法表示为:

          org.apache.log4j.ConsoleAppender(控制台)

          org.apache.log4j.FileAppender(文件)

          org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)

            org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)

          org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

  

      配置时使用方式为:

          log4j.appender.appenderName = fully.qualified.name.of.appender.class

          log4j.appender.appenderName.option1 = value1

          …

            log4j.appender.appenderName.option = valueN

          这样就为日志的输出提供了相当大的便利。

  

        2、Layouts

      有时用户希望根据自己的喜好格式化自己的日志输出。Log4j可以在Appenders的后面附加Layouts来完成这个功能。Layouts提供了 四种日志输出样式,如根据HTML样式、自由指定样式、包含日志级别与信息的样式和包含日志时间、线程、类别等信息的样式等等。

  

      其语法表示为:

          org.apache.log4j.HTMLLayout(以HTML表格形式布局),

          org.apache.log4j.PatternLayout(可以灵活地指定布局模式),

          org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),

          org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

  

      配置时使用方式为:

          log4j.appender.appenderName.layout =fully.qualified.name.of.layout.class

          log4j.appender.appenderName.layout.option1 = value1

          …

          log4j.appender.appenderName.layout.option = valueN

 

        3、Log4j的配置

      以上是从原理方面说明Log4j的使用方法,在具体Java编程使用Log4j可以参照以下示例:

  

      1、建立Logger实例:

      语法表示:public static Logger getLogger( String name)

      实际使用:static Logger logger = Logger.getLogger(ServerWithLog4j.class.getName ()) ;

  

      2、读取配置文件:

      获得了Logger的实例之后,接下来将配置Log4j使用环境:

      语法表示:(或者直接放在src下把log4j.properties文件)

      BasicConfigurator.configure():自动快速地使用缺省Log4j环境。

      PropertyConfigurator.configure(String configFilename):读取使用Java的特性文件编写的配置文件。

      DOMConfigurator.configure(String filename):读取XML形式的配置文件。

      实际使用:

        PropertyConfigurator.configure("ServerWithLog4j.properties");

  

      3、插入日志信息

      完成了以上连个步骤以后,下面就可以按日志的不同级别插入到你要记录日志的任何地方了。

      语法表示:

      Logger.debug(Object message);//调试信息

      Logger.info(Object message);//一般信息

      Logger.warn(Object message);//警告信息

      Logger.error(Object message);//错误信息

      Logger.fatal(Object message);//致命错误信息

      实际使用:logger.info("ServerSocket before accept: " + server);

  

       4. 配置过程 Log4j真正在系统中运行事先还要对配置文件进行定义。定义步骤就是对Logger、Appender及Layout的分别使用。

        Log4j支持两种配置文件格式,一种是XML格式的文件,一种是java properties(key=value)【Java属性文件(键=值)】。

 

http://www.hxstrive.com/article/107.htm

 

分享到:
评论

相关推荐

    log4j入门、详解

    本篇文章将深入探讨Log4j的入门知识和核心特性。 ### 1. Log4j简介 Log4j是基于Java的日志框架,最初由Ceki Gülcü设计,旨在提供灵活且高效的日志记录解决方案。Log4j提供了丰富的配置选项,可以控制日志信息的...

    log4j入门详解

    ### Log4j入门详解 #### 1. Log4j简介 Log4j是Apache软件基金会下的一个开源项目,它提供了一种强大且灵活的方式来管理和控制应用程序的日志记录。相较于简单的打印语句,Log4j提供了更为高级的功能,比如能够根据...

    Log4j 入门到详解[推荐].pdf

    ### Log4j从入门到详解知识点汇总 #### 1. Log4j简介 Log4j是Apache的一个开源项目,主要用于实现日志记录功能。通过使用Log4j,开发者可以非常方便地控制日志信息的输出目的地(如控制台、文件等)、每条日志的...

    log4j入门到详解.pdf

    log4j入门到详解.pdf。。。

    log4j入门、详解.pdf

    ### Log4j 入门与详解 #### 一、Log4j简介 Log4j是Apache组织提供的一个开源日志框架,它可以帮助开发者轻松地在应用程序中实现日志记录功能。传统的日志记录方式通常是在代码中直接使用`System.out.println()`等...

    log4j从入门到精通(附jar文件)

    ### Log4j从入门到精通知识点详述 #### 1. Log4j简介 Log4j 是 Apache 软件基金会旗下的一个开源项目,它是一个用于 Java 的日志记录工具。通过使用 Log4j,开发者可以轻松地在 Java 应用程序中实现日志功能,不仅...

    springboot整合log4j入门程序

    # springboot整合log4j入门程序## 1. 环境springboot 1.3.8.RELEASE + spring-boot-starter-log4j + jdk8## 2. 源码说明:- SpringBoot只有1.3和1.3.x以下版本才支持log4j,1.3.x以上版本只支持log4j2(对于log4j来...

    Log4j入门学习笔记

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

    log4j 入门程序

    **Log4j 入门程序详解** Log4j 是 Apache 提供的一款强大的日志记录工具,广泛应用于 Java 开发环境中。它提供了灵活的日志配置,允许开发者根据需求选择不同的输出级别,如DEBUG、INFO、WARN、ERROR 和 FATAL,...

    log4j从入门到详解

    ### log4j从入门到详解 #### 1. Log4j简介 Log4j是一款由Apache组织提供的开源日志组件,被广泛应用于Java应用程序中。它可以帮助开发者在应用程序中记录日志信息,这对于调试程序、追踪错误以及进行系统监控等...

    log4J最简单入门

    ### Log4J 最简入门详解 #### 一、Log4J简介与基本概念 Log4J是一款非常流行的Java日志框架,由Apache软件基金会提供。它可以帮助开发者在应用程序中记录日志信息,这对于调试和维护应用程序来说至关重要。本文将...

    Log4j教程

    **四、Log4j与其他日志框架的比较** Log4j在Java日志领域有很高的市场份额,但它并非唯一的选择。其他常见的日志框架包括Logback(由Log4j的作者设计的替代品)和Java Util Logging (JUL)。Log4j因其丰富的功能集、...

    log4j快速入门与精通

    #### 一、Log4j简介 Log4j 是 Apache 的一个开源项目,用于 Java 应用程序的日志记录。它提供了一个灵活的日志记录框架,允许开发者根据需求定制日志级别、输出目标等配置。Log4j 相比于传统的 System.out.println ...

    log4j2用户指南

    ### Log4j2 用户指南知识点概述 #### 1.1 欢迎使用 Log4j2! ##### 1.1.1 引言 几乎每一个大型应用都有自己的日志或跟踪 API。根据这一规则,E.U.SEMPER 项目决定在 1996 年初开发自己的追踪 API。经过无数次的...

    Log4j入门指南入门教程

    ### Log4j入门指南知识点详解 #### 一、引言 在软件开发过程中,日志(Log)记录是一项不可或缺的功能。良好的日志管理不仅能帮助开发者快速定位问题所在,还能为后期的系统维护提供便利。本篇内容主要围绕Log4j进行...

    (zt)Commons-logging + Log4j 入门指南

    《Commons-Logging + Log4j 入门指南》 在Java编程中,日志记录是必不可少的一部分,它有助于调试、性能分析以及故障排查。Apache Commons Logging和Log4j是两个广泛使用的日志框架,本指南将深入讲解如何将它们...

    log4j 入门

    Log4j是Java编程语言中广泛使用的日志记录框架,它提供了一套强大且灵活的日志记录机制,使得开发者能够方便地跟踪和调试应用程序的运行状态。相较于Java内置的Logging API,Log4j拥有更高的可配置性和性能,因此...

Global site tag (gtag.js) - Google Analytics