`
z276356445t
  • 浏览: 152321 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

log4与log4j.properties配置详解

阅读更多
一、配置步骤

1、  在应用程序中使用log4j

2、  把log4j-*.*jar包加入工程中

3、  新建一个配置文件log4j.properties,放于src目录下



二、配置log4j.properties

新建一个配置文件log4j.properties:

log4j.rootLogger=WARN, 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
# Print the date in ISO 8601 format
log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p %c - %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
# Print only messages of level WARN or above in the package com.foo.
log4j.logger.com.foo=WARN 

编译并运行TestLog4j会在目录下生成一个example.log的文件,屏幕也会输出信息,这证明已经你已经成功了第一步。

    下面解释下这些配置文件
    log4j.rootLogger = [ level ], appendName1, appendName2, …appendNameN。同一个记录器可有多个输出端。

    PS:level的级别(此级别可以自定义,系统默认提供了以下级别)
        debug//调试信息
        info//一般信息
        warn//警告信息
        error//错误信息
        fatal//致命错误信息
    上面列出的就是所谓log4j的输出级别,log4j建议只使用4个级别,它们从上到下分别为ERROR、WARN、INFO、DEBUG,假设你定义的级别是info,那么error和warn的日志可以显示而比他低的debug信息就不显示了。

log4j.appender.appenderName=fully.qualified.name.of.appender.class。log4j提供了以下几种常用的输出目的地:

    org.apache.log4j.ConsoleAppender,将日志信息输出到控制台

    org.apache.log4j.FileAppender,将日志信息输出到一个文件

    org.apache.log4j.DailyRollingFileAppender,将日志信息输出到一个,并且每天输出到一个新的日志文件

    org.apache.log4j.RollingFileAppender,将日志信息输出到一个文件,通过指定文件的的尺寸,当文件大小到达指定尺寸的时候会自动把文件改名,如名为example.log的文件会改名为 example.log.1,同时产生一个新的example.log文件。如果新的文件再次达到指定尺寸,又会自动把文件改名为 example.log.2,同时产生一个example.log文件。依此类推,直到example.log. MaxBackupIndex, MaxBackupIndex的值可在配置文件中定义。

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

org.apache.log4j.jdbc.JDBCAppender,通过JDBC把日志信息输出到数据库中。

    Log4j提供了一下几种布局:

    org.apache.log4j.HTMLLayout,以HTML表格形式布局
    org.apache.log4j.PatternLayout,可以灵活地指定布局模式
    org.apache.log4j.SimpleLayout,包含日志信息的级别和信息字符串

    定义一个PatternLayout布局的语句为:
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1} - %m%n

PS:ConversionPattern参数的格式含义
格式名 含义
%c 输出日志信息所属的类的全名

%d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy-MM-dd HH:mm:ss },输出类似:2002-10-18- 22:10:28

%f 输出日志信息所属的类的类名

%l 输出日志事件的发生位置,即输出日志信息的语句处于它所在的类的第几行

%m 输出代码中指定的信息,如log(message)中的message

%n 输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n”

%p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL。如果是调用debug()输出的,则为DEBUG,依此类推

%r 输出自应用启动到输出该日志信息所耗费的毫秒数

%t 输出产生该日志事件的线程名



三、在代码中使用Log4j

我们在需要输出日志信息的类中做如下的三个工作:

1、导入所有需的log4j类:

import org.apache.log4j.Logger;

import org.apache.log4j.PropertyConfigurator;

2、在自己的类中定义一个私有静态类成员:

static Logger logger = Logger.getLogger(TestLog4j.class)

3、使用类的成员方法输出日志信息:

if (log.isDebugEnabled())

{

log.debug("debug is execute!");

}

if (log.isInfoEnabled())

{

log.info("info is execute!");");

}

if (log.isWarnEnabled())

{

log.warn("warn is execute!");");

}

if (log.isErrorEnabled())

{

log.error("error is execute!");");

}

if (log.isFatalEnabled())

{

log.fatal("fatal is execute!");")

}  


分享到:
评论

相关推荐

    log4j.properties配置文件

    ### log4j.properties配置文件详解 #### 一、概述 `log4j.properties`是Apache Log4j框架中用于配置日志记录行为的核心文件之一。通过这个文件,开发者可以定义日志消息的输出方式(例如控制台或文件)、日志级别...

    log4j.properties(完整版) log4j.properties(精简版)

    本文将围绕Log4j的核心配置文件`log4j.properties`进行详细讲解,分为完整版和精简版两个部分。 **1. Log4j基础概念** Log4j由三个主要组件构成:Logger(日志器)、Appender(输出器)和Layout(布局)。Logger...

    log4j与log4j.properties的配置.doc

    Log4j 配置详解 Log4j 是一个流行的 Java 日志记录工具,提供了灵活的日志记录机制,能够满足不同的日志记录需求。在本文中,我们将详细介绍 Log4j 的配置,包括配置步骤、log4j.properties 配置文件、日志输出...

    log4j.properties配置详解

    ### Log4j.properties配置详解 #### 一、Log4j配置文件基本概念 Log4j是一种广泛应用于Java应用程序的日志框架,它可以帮助开发者轻松管理应用程序的日志记录过程。Log4j支持多种配置方式,其中.properties文件...

    log4j.properties配置详解.rtf

    log4j.properties配置详解,长期总结,以完善

    log4j.properties 的使用详解(含log4j.properties)

    三、log4j.properties配置详解 1. **Logger级别**:DEBUG、INFO、WARN、ERROR、FATAL。每个级别按严重程度递增,DEBUG是最详细的,FATAL是最严重的。可以根据需要调整不同部分的日志级别。 2. **Appender类型**:...

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

    **日志框架Log4j详解** 日志框架在软件开发中扮演着至关重要的角色,它帮助开发者记录程序运行过程中的信息,便于调试、追踪错误和分析系统性能。Log4j是Apache组织提供的一款广泛使用的Java日志框架,因其灵活性、...

    Log4j.properties配置详解

    在Log4j.properties配置文件中,我们可以通过设置Logger、Appender和Layout来实现日志管理。 1. **Loggers** Loggers是Log4j中的关键组件,它们负责决定哪些信息应该被记录。Log4j提供了五个日志级别,从低到高...

    log4j.properties详解与例子

    本文将深入解析`log4j.properties`配置文件,以及如何配置Logger、Appender和Layout。 首先,创建`log4j.properties`文件是启动Log4j功能的第一步。这个文件通常放在项目的`classes`目录下,以确保在运行时可以被...

    log4j.properties配置实例

    Log4j.properties 配置实例详解 在 Java 应用程序中, Log4j 是一个非常流行的日志记录工具,它能够帮助开发者快速地记录和跟踪应用程序中的日志信息。log4j.properties 文件是 Log4j 的核心配置文件,它控制着 Log...

    Log4.properties配置详解

    ### Log4j配置详解 #### 一、Log4j简介 Log4j 是一款非常流行的 Java 日志框架,由 Apache 软件基金会所提供。它能够帮助开发者在应用程序中记录日志信息,使得应用程序能够在运行时更加透明地展示其内部状态。Log...

    log4j.properties配置详解.doc

    在实际应用中,通过修改`log4j.properties`或`log4j.xml`文件,可以轻松调整日志配置,满足不同环境和需求。例如,开发阶段可能需要DEBUG级别的详细日志,而生产环境中可能只需要ERROR级别的日志,这时只需更改配置...

    log4j.properties的简单运用

    二、`log4j.properties`配置详解 1. 设置全局日志级别: ``` log4j.rootLogger=DEBUG, Console, File ``` 这行代码设置了全局的日志级别为DEBUG,并将日志输出到Console和File两个Appender。 2. 配置Console ...

    log4j配置实例(含配log4j.properties及jar包)

    本教程将深入探讨如何配置和使用Log4j,包括`log4j.properties`配置文件的编写以及相应的Java代码示例。 1. **Log4j的核心组件** - **Logger**: 日志记录器,用于生成日志事件。 - **Appender**: 输出目标,负责...

    log4j.properties配置详解 使用教程

    ### log4j.properties配置详解与使用教程 #### 一、log4j简介 log4j是Apache的一个开源项目,用于实现日志功能。它提供了一种简单的方式来管理和配置应用程序的日志输出,支持多种输出目的地(如控制台、文件等)...

    log4j.properties 全部应用

    《log4j.properties全应用详解》 在Java开发中,日志记录是不可或缺的一部分,它帮助开发者追踪程序运行状态,定位错误,优化性能。本文将深入探讨log4j.properties配置文件的使用,以及如何在实际项目中充分利用其...

    log4j-1.2.11jar和log4j.properties配置文件

    **三、log4j.properties配置文件** `log4j.properties`是Log4j的配置文件,通过这个文件可以定制日志的输出级别、输出目的地和输出格式。下面是一个基础的`log4j.properties`配置示例: ```properties # 设置全局...

Global site tag (gtag.js) - Google Analytics