log4j配置文件详解附实例Word文件下载.docx

上传人:b****3 文档编号:15702064 上传时间:2022-11-15 格式:DOCX 页数:28 大小:36.94KB
下载 相关 举报
log4j配置文件详解附实例Word文件下载.docx_第1页
第1页 / 共28页
log4j配置文件详解附实例Word文件下载.docx_第2页
第2页 / 共28页
log4j配置文件详解附实例Word文件下载.docx_第3页
第3页 / 共28页
log4j配置文件详解附实例Word文件下载.docx_第4页
第4页 / 共28页
log4j配置文件详解附实例Word文件下载.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

log4j配置文件详解附实例Word文件下载.docx

《log4j配置文件详解附实例Word文件下载.docx》由会员分享,可在线阅读,更多相关《log4j配置文件详解附实例Word文件下载.docx(28页珍藏版)》请在冰豆网上搜索。

log4j配置文件详解附实例Word文件下载.docx

log4j.appender.filelog.MaxFileSize=yourfilesize

log4j.appender.mylog.MaxBackupIndex=num设置保存备份文件数量

log4j.appender.appenderName.layout=布局类型(设置布局类型)

Log4j提供的layout有以下4种:

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

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

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

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

如果使用PatternLayout布局就要指定的打印信息的具体格式ConversionPattern,打印参数如下:

%m输出代码中指定的消息

%p输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL

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

%c输出所属的类目,通常就是所在类的全名

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

%n输出一个回车换行符,Windows为"

rn"

,Unix为"

n"

%d输出日志时间,比如:

%d{yyyyMMMddHH:

mm:

ss,SSS},输出:

2007年5月17日19:

30:

00,000

%l输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数

[QC]是log信息的开头,可以为任意字符,一般为项目简称

程序中并没有直接用到log4j的类,而是使用了commons-logging提供的日志类。

commons-logging是为"

所有的Java日志实现"

提供一个统一的接口,它的功能据说“平常弱”。

Log(基本记录器)和LogFactory(负责创建Log实例)。

当commons-logging.jar被加入到CLASSPATH之后,它会合理地猜测你喜欢的日志工具,然后进行自我设置,用户根本不需要做任何设置。

默认的LogFactory是按照下列的步骤去发现并决定那个日志工具将被使用的(按照顺序,寻找过程会在找到第一个工具时中止):

1.寻找当前factory中名叫mons.logging.Log配置属性的值

2.寻找系统中属性中名叫mons.logging.Log的值

3.如果应用程序的classpath中有log4j,则使用相关的包装(wrapper)类(Log4JLogger)

4.如果应用程序运行在jdk1.4的系统中,使用相关的包装类(Jdk14Logger)

5.使用简易日志包装类(SimpleLog)

log4j配置详解

--------------------------------------------------------------------------------

log4j配置详解log4j详解

根据网络资料整理

1.概述<

<

  1.1.背景

  

  在应用程序中添加日志记录总的来说基于三个目的:

监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工作;

跟踪代码运行时轨迹,作为日后审计的依据;

担当集成开发环境中的调试器的作用,向文件或控制台打印代码的调试信息。

  最普通的做法就是在代码中嵌入许多的打印语句,这些打印语句可以输出到控制台或文件中,比较好的做法就是构造一个日志操作类来封装此类操作,而不是让一系列的打印语句充斥了代码的主体。

  1.2.Log4j简介

  在强调可重用组件开发的今天,除了自己从头到尾开发一个可重用的日志操作类外,Apache为我们提供了一个强有力的日志操作包-Log4j。

  Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIXSyslog守护进程等;

我们也可以控制每一条日志的输出格式;

通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。

最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。

  此外,通过Log4j其他语言接口,您可以在C、C++、.Net、PL/SQL程序中使用Log4j,其语法和用法与在Java程序中一样,使得多语言分布式系统得到一个统一一致的日志组件模块。

而且,通过使用各种第三方扩展,您可以很方便地将Log4j集成到J2EE、JINI甚至是SNMP应用中。

  本文介绍的Log4j版本是1.2.3。

作者试图通过一个简单的客户/服务器Java程序例子对比使用与不使用Log4j1.2.3的差别,并详细讲解了在实践中最常使用Log4j的方法和步骤。

在强调可重用组件开发的今天,相信Log4j将会给广大的设计开发人员带来方便。

加入到Log4j的队伍来吧!

>

2.一个简单的例子<

  我们先来看一个简单的例子,它是一个用Java实现的客户/服务器网络程序。

刚开始我们不使用Log4j,而是使用了一系列的打印语句,然后我们将使用Log4j来实现它的日志功能。

这样,大家就可以清楚地比较出前后两个代码的差别。

  2.1.不使用Log4j

  2.1.1.客户程序

  packagelog4j;

  importjava.io.*;

  import.*;

  publicclassClientWithoutLog4j{

    

    publicstaticvoidmain(Stringargs[]){

      Stringwelcome=null;

      Stringresponse=null;

      BufferedReaderreader=null;

      PrintWriterwriter=null;

      InputStreamin=null;

      OutputStreamout=null;

      Socketclient=null;

      try{

        client=newSocket("

localhost"

8001);

        System.out.println("

info:

Clientsocket:

"

+client);

        in=client.getInputStream();

        out=client.getOutputStream();

      }catch(IOExceptione){

error:

IOException:

+e);

        System.exit(0);

      }

      try{

        reader=newBufferedReader(newInputStreamReader(in));

        writer=newPrintWriter(newOutputStreamWriter(out),true);

        welcome=reader.readLine();

debug:

Serversays:

'

"

+welcome+"

'

);

HELLO"

        writer.println("

HELLO"

        response=reader.readLine();

Serverresponds:

+response+"

);

HELP"

HELP"

QUIT"

QUIT"

warn:

IOExceptioninclient.in.readln()"

        System.out.println(e);

        Thread.sleep(2000);

      }catch(Exceptionignored){}

    }

  }

  2.1.2.服务器程序

  packagelog4j

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1