`
z276356445t
  • 浏览: 151142 次
  • 性别: 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配置详解.rtf

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

    Log4j.properties配置详解

    Log4j.properties配置详解,Log4j.properties配置详解,Log4j.properties配置详解,Log4j.properties配置详解Log4j.properties配置详解

    log4j_properties配置详解

    %d{ABSOLUTE} %5p %c{ 1}:%L - %m%n### 输出到日志文件 ###log4j.appender.D =org.apache.log4j.DailyRollingFileAppenderlog4j.appender.D.File =logs/log.loglog4j.appender.D.Append =truelog4j.appender.D....

    log4j.properties配置详解.doc

    作为Apache的开源项目,Log4j可以使我们很好的控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、 UNIX Syslog守护进程等;也可以方便的使我们控制每一条日志的输出格式;通过...

    log4j.properties配置详解 使用教程

    log4j.properties配置详解 使用教程

    详解Java中log4j.properties配置与加载应用

    主要介绍了 log4j.properties配置与加载应用的相关资料,需要的朋友可以参考下

    log4j.properties详解与例子

    在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行...Log4j支持两种配置文件格式,一种是XML格式的文件,一种是java properties(key=value)【Java特性文件(键=值)】。(这里只说明properties文件)

    Log4.properties配置详解

    Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在...

    log4j入门到详解

    1. Log4j 简介 ........... 2. 下载与使用............ 2.1 下载 log4j 的 jar 文件 2.2 编写一个测试类 ...... 2.3 编写配置文件........ 2.4 输出结果 ........... 3. Log4j 构成 ........... 4. Log4j 使用方法.....

    log4j2-所需jar包+配置详解(详细)

     log4j 2.x版本不再支持像1.x中的.properties后缀的文件配置方式,2.x版本配置文件后缀名只能为".xml",".json"或者".jsn".  系统选择配置文件的优先级(从先到后)如下:  (1).classpath下的名为log4j2-test.json...

    详解log4j.properties的简单配置和使用

    本篇文章主要介绍了详解log4j.properties的简单配置和使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    log4j常用配置详解

    log4j常用配置,properties 和.xml两种配置示例

    log4j日志配置以及配置文件详解

    log4j配置文件以及配置文件说明 包里有一个log4j配置文件 和一个配置详解

    log4j详解配置说明

    log4j详解,log4j详细配置说明手册

    log4j之properties文件详解

    log4j.properties 配置详解与实例

    Log4j配置详解

    Log4j.properties配置详解

Global site tag (gtag.js) - Google Analytics