`
宋科明
  • 浏览: 101670 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

log4j参数配置说明

阅读更多

Log4j由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地,日志信息的输出格式。日志信息的优先级从高到低有ERROR、WARN、INFO、DEBUG,分别用来指定这条日志信息的重要程度;日志信息的输出目的地指定了日志将打印到控制台还是文件中;而输出格式则控制了日志信息的显示内容。

1、定义配置文件 

其实您也可以完全不使用配置文件,而是在代码中配置Log4j环境。但是,使用配置文件将使您的应用程序更加灵活。 

Log4j支持两种配置文件格式,一种是Java特性文件(键=值),一种是XML格式的文件。下面我们介绍使用Log4j配置文件的方法: 

配置根Logger,其语法为: 

log4j.rootLogger = [ level ] , appenderName, appenderName, …
其中,level 是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别。Log4j建议只使用四个级别,优先级从高到低分别是ERROR、WARN、INFO、DEBUG。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。比如在这里定义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来。 

appenderName就是指定日志信息输出到哪个地方。您可以同时指定多个输出目的地。 

配置日志信息输出目的地Appender,其语法为 

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

log4j.appender.appenderName.optionN = valueN
其中,Log4j提供的appender有以下几种:

org.apache.log4j.ConsoleAppender(控制台)
org.apache.log4j.FileAppender(文件)
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
配置日志信息的格式(布局),其语法为: 

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

log4j.appender.appenderName.layout.optionN = valueN
其中,Log4j提供的layout有以下几种:

org.apache.log4j.HTMLLayout(以HTML表格形式布局)
org.apache.log4j.PatternLayout(可以灵活地指定布局模式)
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
2、在代码中使用Log4j 

下面将讲述在程序代码中怎样使用Log4j。

i、得到记录器 使用Log4j,第一步就是获取日志记录器,这个记录器将负责控制日志信息。其语法为: public static Logger getLogger( String name),通过指定的名字获得记录器,如果必要的话,则为这个名字创建一个新的记录器。Name一般取本类的名字,比如: static Logger logger = Logger.getLogger ( ServerWithLog4j.class.getName () ) ; 

ii、读取配置文件当获得了日志记录器之后,第二步将配置Log4j环境,其语法为: BasicConfigurator.configure (): 自动快速地使用缺省Log4j环境。 PropertyConfigurator.configure ( String configFilename) :读取使用Java的特性文件编写的配置文件。 DOMConfigurator.configure ( String filename ) :读取XML形式的配置文件。 

iii、插入记录信息(格式化日志信息)当上两个必要步骤执行完毕,您就可以轻松地使用不同优先级别的日志记录语句插入到您想记录日志的任何地方,其语法如下:

Logger.debug ( Object message ) ;
Logger.info ( Object message ) ;
Logger.warn ( Object message ) ;
Logger.error ( Object message ) ;
iv、代码例子注释:蓝色 – 文件名 红色 – 用到log4j的地方

Hello.java

import org.apache.log4j.*;
 
public class Hello {
   static Logger logger = Logger.getLogger(Hello.class);
 
   public static void main(String argv[]) {
      PropertyConfigurator.configure("Hello.properties");
      logger.debug("Hello world.");
      logger.info("What a beatiful day.");
 
      try {
         // 假如这里出现了异常
      throw new NullPointerException();
      } catch (Exception e) {
         logger.warn("NullPointerException", e);  
      }
  }
} 
log4j.properties

log4j.rootLogger=debug, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
 
# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
 
#log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=example.log
log4j.appender.R.MaxFileSize=100KB
 
# Keep one backup file
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n

 

log4j.xml


<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
      <!--==============================================-->
      <!--                                              -->
      <!--           rolling file Appender                      -->
      <!--==============================================-->
 
      <appender name="B1" class="org.apache.log4j.RollingFileAppender">
            <param name="File" value="log.htm" />
            <param name="Append" value="false" />
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d [%t] %p -%m%n" />
 
            </layout>
      </appender>
      <!--==============================================-->
      <!--                                              -->
      <!--           console Appender                          -->
      <!--==============================================-->
      <appender name="A1" class="org.apache.log4j.ConsoleAppender">
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d [%t] %p - %m%n" />
            </layout>
      </appender>
      <!-- define root-->
      <root>
            <level value="INFO" />
            <appender-ref ref="A1" />            <appender-ref ref="B1" />
      </root>
</log4j:configuration>

分享到:
评论

相关推荐

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

    ### Log4j日志配置详解 #### 一、概述 Log4j 是一个基于 Java 的开源日志记录框架,由 Apache 软件基金会维护。它允许开发人员根据等级记录日志信息,使得用户能够控制日志信息的记录级别及去向。本文将通过一份...

    log4j集成syslog配置说明

    ### log4j集成syslog配置详解 在现代的IT运维管理中,日志记录与分析是确保系统稳定运行的关键环节之一。log4j作为Java应用中广泛使用的日志框架,其强大的日志处理能力得到了业界的认可。而syslog作为一种标准化的...

    log4j详解配置说明

    ### Log4j 配置详解 #### 一、概述 Log4j 是一款非常流行的 Java 日志框架,它提供了一种灵活的日志记录机制。在实际应用中,开发者可以通过简单的配置来实现对日志级别的控制、日志信息的格式化以及日志文件的...

    Log4J完整说明和配置

    ### Log4J完整说明与配置解析 #### 一、Log4J简介 Log4J是Apache的一个开源项目,用于提供灵活的日志记录功能。通过它,开发者能够控制日志信息的输出级别、输出目的地(控制台、文件等)、格式化方式等。本文将...

    Log4j 相对路径配置

    以下是关于Log4j相对路径配置的详细说明: 首先,在`Web.xml`文件中,我们需要进行一些配置来使Log4j在Web应用启动时初始化。`&lt;context-param&gt;`标签用于设置Log4j的相关参数: 1. `&lt;param-name&gt;webAppRootKey...

    c3p0&log4j配置文件及说明

    log4j的配置文件一般为`log4j.properties`或`log4j.xml`,根据项目需求选择不同的格式。例如,一个基本的`log4j.properties`配置可能如下所示: ``` # 设置全局日志级别为INFO log4j.rootLogger=INFO, stdout, R #...

    log4j乱码问题解决办法

    本文将详细介绍如何通过修改`log4j.properties`配置文件来解决log4j中的乱码问题。 #### 二、问题背景 在使用log4j时,经常会在控制台或日志文件中看到乱码,尤其是在涉及中文字符的情况下。这通常是由于日志系统...

    tomcat8更换log4j记录日志

    接下来,压缩包中的"**说明.txt**"文件应该是关于如何在Tomcat8中集成和配置Log4j的详细步骤,可能包括以下内容: 1. 将`log4j.properties`文件放置在Tomcat的`conf`目录下,以便于Tomcat启动时自动加载。 2. 如果...

    log4j配置详细说明

    本文将详细介绍Log4J的配置方法,包括配置文件的结构、日志级别、Appender、Layout以及打印参数。 ### 1. 配置文件 Log4J的配置文件主要由三部分组成: - **Root Logger配置**:定义了日志的全局级别,如`FATAL`,...

    Log4j.properties详细说明

    Log4j.properties 配置详解 Log4j.properties 文件是 Log4j 框架的核心配置文件,用于设置记录器的级别、存放器和布局。通过配置,可以创建出 Log4J 的运行环境。下面是 Log4j.properties 文件的详细配置解释。 ...

    log4j配置文件基本含义说明

    为了更好地理解和配置Log4j,本篇文章将详细介绍其配置文件中的关键概念和参数。 #### 二、Log4j配置文件的基本结构 Log4j的配置文件通常采用.properties文件格式,如`log4j.properties`。该文件包含了日志级别设置...

    Log4j使用说明文档

    - 配置Log4j主要是通过一个XML或.properties格式的配置文件,例如`log4j.properties`或`log4j.xml`,来定义日志的行为。这包括设置日志输出级别、指定输出目的地(Appender)、格式化日志信息(Layout)等。 - ...

    Java与log4j2整合mongoDB需要的jar包

    2. **配置log4j2**:在你的项目中创建一个log4j2的配置文件(通常是`log4j2.xml`或`log4j2.json`)。在配置文件中,你需要定义一个Appender,将日志输出到MongoDB。这可能涉及到MongoDBAppender类,它可以将日志事件...

    log4j测试程序

    3. **配置文件**:Log4j可以通过XML(如log4j.xml)或properties(如log4j.properties)文件进行配置,这些文件定义了日志输出的位置、格式和级别等参数。 4. **Appenders**:Appender是Log4j中负责将日志信息输出...

    Log4j 配置最全说明

    本文将深入探讨Log4j的配置,包括配置文件格式、日志级别、Appender(输出目的地)、Layout(布局模式)以及日志信息的格式化。 1. 配置文件格式 Log4j支持两种配置文件格式:XML和Java特性文件(log4j.properties...

    log4j漏洞扫描工具

    3. **缓解措施**:更新到不受影响的Log4j版本(如2.15.0或更高),或者在无法立即更新的情况下,可以采用临时的环境变量或配置修改来防止攻击。 4. **使用Log4j漏洞扫描工具**:对于大型系统或包含大量JAR文件的...

    log4j经典用法

    - **支持的配置文件格式**:log4j支持两种配置文件格式,分别是XML格式和Java properties格式。 - **本文重点讲解**:本文主要介绍properties文件格式。 ##### 2. 根Logger配置 - **语法**: ``` log4j.root...

    log4J的使用说明

    下面是对Log4J使用及其配置的详细说明。 首先,要在项目中启用Log4J功能,需要将log4j的jar文件(如log4j-XXX.jar)添加到类路径中。这通常通过IDE(如Eclipse或IntelliJ IDEA)的依赖管理工具或者构建工具(如...

    log4j及使用说明

    **Log4j简介** Log4j是Apache组织提供的一款开源的日志记录框架...提供的文档如"Log4j配置手册.doc"和"Log4j 配置参数 - Java - Blue Dreams.mht"将进一步深入讲解Log4j的配置与实践,对于理解和使用Log4j非常有帮助。

    LOG4J配置全接触

    ### LOG4J配置详解 #### 一、概述 在软件开发过程中,日志记录是必不可少的一个环节,它有助于开发者在出现问题时快速定位问题所在,并且能够帮助系统管理员更好地监控系统的运行状态。Apache Log4j 是一个流行的...

Global site tag (gtag.js) - Google Analytics