`
Action-人生
  • 浏览: 106713 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Log4j的日志的使用

    博客分类:
  • JAVA
阅读更多
http://blog.csdn.net/wuhailin2005/article/details/3734456
Log4j的日志的使用
1. 为什么要使用Java日志
    在程序的开发过程中我们需要调试程序,这时我们通过建立日志文件来记录程序的异常信息,当然有人说我们可以在IDE环境中通过控制台来查看堆栈信息也是可以调试程序,甚至通过单步调试来进行。没错,可是如果我们能够对异常信息进行保存那不是更好吗?所以Java日志的第一个作用就是在开发阶段记录程序的调试信息。
    另外更为重要的是在产品交付使用后,我们可以用日志文件来记录程序的运行期间所发生的问题,帮助我们跟踪程序的运行状态,用户的使用信息,以改进程序,以方便维护人员查找问题,这是日志的第二个作用

2. Log4j的下载安装
    Log4j是Java最流行的日志处理框架,包括许多著名的开源项目都是通过Log4j来记录和管理日志信息的,例如Hibernate。那么到哪里去下载Log4j呢,我们可以在apache的网站上down一个Log4j,地址是:http://logging.apache.org/log4j/去下载,下载解压后将log4j-1.2.15.jar文件拷贝到你的程序的classpath中去,这样就可以使用log4j的日志功能了。

3. Log4j的使用
package com.log;

import java.util.Date;
import org.apache.log4j.Logger;

/**
* 演示log4j的使用
* @author wuhailin
*/
public class MainClass {

    // 调用Logger的getLogger方法获得一个Logger的实例,在这个方法中通常传入当前要记录的类
    private static Logger log = Logger.getLogger(MainClass.class);

    /**
     * @param args
     */
    public static void main(String[] args) {
        log.info("程序开始运行"+ new Date().toString());
        int result = 0;
        try {
            result = 4 / 0;
        } catch (Exception ex) {
            log.error("在获得两个数相除的结果时产生异常.", ex);
        }
        log.info("程序运行结束"+ new Date().toString());
    }
}

4. log4j日志的简单配置及使用Log4j.properties

#######################################################################
#将JDBC日志记录到JDBC记录器中 modify by wuhailin
log4j.logger.JDBC=debug,JDBC
log4j.appender.JDBC=org.apache.log4j.RollingFileAppender
log4j.appender.JDBC.File=../log/jdbc.log
log4j.appender.JDBC.layout=org.apache.log4j.PatternLayout
log4j.appender.JDBC.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
log4j.appender.JDBC.MaxFileSize=2048KB
在使用JDBC的地方可以先加入这段代码
static org.apache.log4j.Logger log = org.apache.log4j.Logger.getLogger("JDBC");
需要记录日志的地方加入
log.debug("日志内容");//例如,log.debug("[insert statement in TapeTTSDAOImpl.addTapeTTSFile]"+sql);
5. log4j的详细配置
   在上面的代码中如果运行就会在控制台上输出下列信息:
log4j:WARN No appenders could be found for logger (liky.log.MainClass).
log4j:WARN Please initialize the log4j system properly.
这是因为你还没有配置log4j的配置文件,log4j的日志文件有两种格式,一种是java的属性文件.properties文件,另一种是.xml文件,这里我们以属性文件为例说明如何配置。
    首先在你当前的源代码src根目录下新建一个log4j.properties文件,然后在文件中输入下列内容:

# log4j.rootLogger=level,appenderName1,...,appenderNameN
# 表示日志记录所有包中的所有的类的日志,可以在同时声明多个日志,每个日志都可以单独配置
# all:表示日志的级别,可用的选项有:all、trace、debug、info、warn、error、fatal、off
# all表示输出所有信息,off表示任何信息都不记录,越往后级别越高,记录的信息越少
log4j.rootLogger=all,root

# log4j.logger.package: 如果只是记录一部分包的类的日志则使用log4j.logger.package
# 例如:log4j.logger.liky.log.test就表示只记录liky.log包中的类的日志
log4j.logger.liky.log.test=info,test

# log4j.appender.appenderName=org.appender.log4j.Appender
# 表示日志的输出到哪里,Appender表示org.appender.log4j这个包中实现了Appender接口的类
# 实现了Appender接口的类有很多,最常用的有:
# org.apache.log4j.ConsoleAppender:输出到控制台
# org.apache.log4j.FileAppender:输出到日志文件,使用一个日志文件,没有大小限制
# org.apache.log4j.DailyRollingFileAppender:输出到日志文件,每天产生一个日志文件
# org.apache.log4j.RollingFileAppender:输出到日志文件,如果超过了限定大小,则重新产生一个新的
# org.apache.log4j.WriterAppender:将日志文件以字符串流的格式发送到客户指定的任何地方
# org.apache.log4j.jdbc.JDBCAppender:将日志文件输出到数据库中
log4j.appender.root=org.apache.log4j.FileAppender

log4j.appender.test=org.apache.log4j.DailyRollingFileAppender

# log4j.appender.appernderName.File=filePath/fileName
# 如果指定日志输出到文件中,那么需要制定日志文件的路径和文件名,这里和文件的样式相关联
log4j.appender.root.File=log.html
log4j.appender.test.File=test.html

# log4j.appender.appenderName.layout=org.apache.log4j.formatLayout
# 这里制定文件的格式,可选的有:
# org.apache.log4j.HTMLLayout:输出为html格式
# org.apache.log4j.SimpleLayout:由日志的级别和日志的提示信息组成,中间用"-"连接
# org.apache.log4j.TTCCLayout:由时间、线程名、分类、上下文的提示信息组成
# org.apache.log4j.PatternLayout:这是最灵活的日志文件格式,可以配置,相关的配置请参考log4j的文档
log4j.appender.root.layout=org.apache.log4j.HTMLLayout
log4j.appender.test.layout=org.apache.log4j.SimpleLayout
分享到:
评论

相关推荐

    log4j日志使用说明

    ### Log4j日志使用说明 #### 一、Log4j简介及应用场景 Log4j是Apache的一个开源项目,主要用于Java应用程序的日志记录。通过使用Log4j,开发者可以非常灵活地控制日志信息的输出目的地(如控制台、文件、GUI组件、...

    log4j日志使用

    四、使用log4j 在Java代码中,我们可以通过以下方式使用log4j: ```java import org.apache.log4j.Logger; public class MyClass { private static final Logger logger = Logger.getLogger(MyClass.class); ...

    SSM整合中的Log4j日志的配置详情

    Log4j 是一个功能强大且广泛使用的日志记录工具,特别是在 SSM(Spring、Spring MVC、Mybatis)整合项目中,合理地配置 Log4j 对项目的日志记录和输出至关重要。本文将详细介绍 SSM 整合中的 Log4j 配置详情,帮助...

    tomcat下的log4j日志配置

    在使用 Apache Tomcat 作为服务器时,合理配置日志框架(如 Log4j)能够极大地提高开发效率和系统的可维护性。本文将详细介绍两种常见的 Log4j 配置方式:Tomcat 级别的统一日志管理和每个 web 应用分别配置 Log4j,...

    log4j使用与java中log4j记录日志如何写入数据库

    本文将详细介绍如何在Java中使用Log4j来记录日志,并将其写入数据库。 首先,我们需要了解Log4j的基本结构。一个简单的Log4j项目通常包含以下几个部分: 1. **配置文件**:Log4j的配置文件通常是`log4j.properties...

    kettle使用log4j管理输出日志

    参照了几个网上大神配置,部分教程的描述有误,最终调试完成,可以实现kettle日志输出,测试版本...需要替换的文件为,Kettle的程序目录下data-integration-6.0\plugins\kettle5-log4j-plugin中有一个log4j.xml文件。

    log4j日志报错解决办法

    Log4j 是一款广泛使用的Java日志记录框架,它提供了灵活的日志配置和丰富的日志级别,便于开发者调试和监控应用程序。在Java开发过程中,如果遇到"log4j:WARN Please initialize the log4j system properly"这样的...

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

    这是log4j框架的配置文件,使用Java Properties格式,用于定义日志输出的行为。主要包括以下几个核心部分: 1. **Logger**: 定义日志级别,例如DEBUG、INFO、WARN、ERROR和FATAL。日志级别决定了哪些信息会被记录。...

    使用log4j2实现日志数据脱敏

    Log4j2作为Java领域广泛使用的日志框架,提供了丰富的功能来满足这一需求。本文将详细介绍如何使用Log4j2实现日志数据脱敏。 一、Log4j2简介 Log4j2是Apache软件基金会开发的日志框架Log4j的升级版,它具有更高的...

    log4j按功能保存日志

    Log4j是一款广泛使用的Java日志记录框架,它允许开发者按照功能模块或特定需求记录应用程序运行过程中的事件信息。在“log4j按功能保存日志”的场景中,我们通常会利用Log4j的配置灵活性,将不同功能的日志分别写入...

    tomcat6.0 配log4j日志的必须文件及配置过程

    tomcat6.0 配log4j日志的必须文件及配置过程 tomcat6-------lib | |--------tomcat-juli-adapters.jar | |--------log4j.jar | |--------log4j.properites | |----bin |--------tomcat-juli.jar 最后把log4...

    log4j日志包日志包

    在Java编程语言中,`log4j`是一个广泛使用的日志记录框架,因其强大的功能和灵活性而备受推崇。 **log4j简介** `log4j`是由Apache软件基金会开发的一个开源的日志组件,它为Java应用程序提供了一种灵活、高效和可...

    log4j自定义日志文件名及日志输出格式

    Log4j是Apache提供的一款广泛使用的日志框架,它提供了丰富的配置选项,允许开发者灵活地控制日志输出。当我们面对特定项目需求,比如需要自定义日志文件名和日志输出格式时,Log4j同样提供了相应的解决方案。 首先...

    log4j日志jar包

    本文将详细探讨Log4j日志jar包的功能、使用方法以及其在实际项目中的重要性。 1. **Log4j的基本概念** Log4j是一个灵活且功能强大的日志库,它提供了丰富的配置选项,可以控制日志信息的输出级别(如DEBUG、INFO...

    log4j日志文件乱码解决方法

    本文将详细讨论如何解决Log4j日志文件出现的乱码问题。 首先,我们要理解Log4j的工作原理。Log4j允许开发者自定义日志输出的方式,包括输出到控制台、文件、数据库等。它使用了`QuietWriter`类来写入日志,`...

    log4J日志.zip

    在“log4j日志.zip”压缩包中,包含的可能是Log4j的配置文件(如log4j.properties或log4j.xml)。这个文件定义了日志的级别、输出位置和格式。例如: ```properties # log4j.properties 示例 log4j.rootLogger=...

    log4j日志的基本使用

    ### Log4j日志框架基本使用详解 #### 一、Log4j概述 Log4j是Apache的一个开源项目,被广泛应用于Java应用中作为日志记录工具。它提供了一个简单而强大的日志记录机制,可以帮助开发者高效地追踪程序运行过程中的...

    示范如何在android工程中使用log4j记录日志

    Log4j是一个广泛使用的Java日志框架,它提供了强大的日志处理功能,包括日志级别控制、自定义日志格式、多路复用等。然而,由于Android系统对第三方库的限制,直接在Android工程中使用Log4j需要一些额外的步骤。本文...

    老生常谈Log4j和Log4j2的区别(推荐)

    然后使用Logger.getLogger()方法获取日志记录器,而Log4j2需要import org.apache.logging.log4j.Level、org.apache.logging.log4j.LogManager和org.apache.logging.log4j.Logger,使用LogManager.getLogger()方法...

Global site tag (gtag.js) - Google Analytics