`

log4j配置的相关例子

    博客分类:
  • java
 
阅读更多
一:使用log4j.xml

1.log4j.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>

<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
   <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="/n[%r][%p][%t] %d{HH:mm:ss,SSS} method:%l/n%m%n"/>
   </layout>
</appender>

<appender name="DEBUG" class="org.apache.log4j.DailyRollingFileAppender">
   <param name="File" value="./logs/app-debug.log"/>
   <param name="DatePattern" value="'.'yyyy-MM-dd"/>
   <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss},%m%n"/>
   </layout>
   <filter class="org.apache.log4j.varia.LevelRangeFilter">
    <param name="LevelMin" value="DEBUG"/>
    <param name="LevelMax" value="DEBUG"/>
   </filter>
</appender>

<appender name="INFO" class="org.apache.log4j.DailyRollingFileAppender">
   <param name="File" value="./logs/app-info.log"/>
   <param name="DatePattern" value="'.'yyyy-MM-dd"/>
   <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="[%-5r][%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l %m%n"/>
   </layout>
   <filter class="org.apache.log4j.varia.LevelRangeFilter">
    <param name="LevelMin" value="INFO"/>
    <param name="LevelMax" value="INFO"/>
   </filter>
</appender>

<appender name="WARN" class="org.apache.log4j.DailyRollingFileAppender">
   <param name="File" value="./logs/app-warn.log"/>
   <param name="DatePattern" value="'.'yyyy-MM-dd"/>
   <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="[%-5r][%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l %m%n"/>
   </layout>
   <filter class="org.apache.log4j.varia.LevelRangeFilter">
    <param name="LevelMin" value="WARN"/>
    <param name="LevelMax" value="WARN"/>
   </filter>
</appender>

<appender name="ERROR" class="org.apache.log4j.DailyRollingFileAppender">
   <param name="File" value="./logs/app-error.log"/>
   <param name="DatePattern" value="'.'yyyy-MM-dd"/>
   <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="[%-5r][%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l %m%n"/>
   </layout>
   <filter class="org.apache.log4j.varia.LevelRangeFilter">
    <param name="LevelMin" value="ERROR"/>
    <param name="LevelMax" value="ERROR"/>
   </filter>
</appender>

<root>
   <priority value="STDOUT"/>
   <appender-ref ref="STDOUT"/>
   <appender-ref ref="DEBUG"/>
   <appender-ref ref="INFO"/>
   <appender-ref ref="WARN"/>
   <appender-ref ref="ERROR"/>
</root>

</log4j:configuration>

2.在类中使用

package com.tianze.jmsn.test;
import org.apache.log4j.Logger;
import org.apache.log4j.xml.DOMConfigurator;
public class TestLogger {
    static Logger logger = Logger.getLogger(TestLogger.class.getName());
    public static void main(String[] s){
           DOMConfigurator.configureAndWatch("D://log4jcfg.xml");
            logger.debug("----logger debug ----");
            logger.info("----logger info ----");
            logger.warn("----logger warn ----");
            logger.error("----logger errors ----");
            logger.fatal("----logger fatal ----");
//        logger.log(Level.DEBUG, "----logger debug ----");
//        logger.log(Level.INFO, "----logger info ----");
//        logger.log(Level.WARN, "----logger warn ----");
//        logger.log(Level.ERROR, "----logger error ----");
//        logger.log(Level.FATAL, "----logger fatal ----");
    }
}

二:使用log4j.properties

1.log4j.properties配置

    将配置好的属性文件放到src下。

# To change this template, choose Tools | Templates
# and open the template in the editor.
log4j.rootLogger=DEBUG,STDOUT,DEBUG,INFO,WARN,ERROR

# STDOUT is set to be a ConsoleAppender.
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
# STDOUT uses PatternLayout.
log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
log4j.appender.STDOUT.layout.ConversionPattern=/n[%r][%p][%t] %d{HH:mm:ss,SSS} method:%l/n%m%n
log4j.logger.com.tianze.jmsn.test=DEBUG

# DEBUG is set to be a DailyRollingFileAppender.
log4j.appender.DEBUG=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DEBUG.File=./logs/app-debug.log
log4j.appender.DEBUG.DatePattern='.'yyyy-MM-dd
# DEBUG uses PatternLayout.
log4j.appender.DEBUG.layout=org.apache.log4j.PatternLayout
log4j.appender.DEBUG.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss},%m%n
#log4j.appender.DEBUG.filter=org.apache.log4j.varia.LevelRangeFilter
log4j.appender.DEBUG.filter.LevelMin=DEBUG
log4j.appender.DEBUG.filter.LevelMax=DEBUG

# INFO is set to be a DailyRollingFileAppender.
log4j.appender.INFO=org.apache.log4j.DailyRollingFileAppender
log4j.appender.INFO.File=./logs/app-info.log
log4j.appender.INFO.DatePattern='.'yyyy-MM-dd
# INFO uses PatternLayout.
log4j.appender.INFO.layout=org.apache.log4j.PatternLayout
log4j.appender.INFO.layout.ConversionPattern=[%-5r][%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l %m%n
#log4j.appender.INFO.filter=org.apache.log4j.varia.LevelRangeFilter
log4j.appender.INFO.filter.LevelMin=INFO
log4j.appender.INFO.filter.LevelMax=INFO

# WARN is set to be a DailyRollingFileAppender.
log4j.appender.WARN=org.apache.log4j.DailyRollingFileAppender
log4j.appender.WARN.File=./logs/app-warn.log
log4j.appender.WARN.DatePattern='.'yyyy-MM-dd
# INFO uses PatternLayout.
log4j.appender.WARN.layout=org.apache.log4j.PatternLayout
log4j.appender.WARN.layout.ConversionPattern=[%-5r][%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l %m%n
#log4j.appender.WARN.filter=org.apache.log4j.varia.LevelRangeFilter
log4j.appender.WARN.filter.LevelMin=WARN
log4j.appender.WARN.filter.LevelMax=WARN

# ERROR is set to be a DailyRollingFileAppender.
log4j.appender.ERROR=org.apache.log4j.DailyRollingFileAppender
log4j.appender.ERROR.File=./logs/app-error.log
log4j.appender.ERROR.DatePattern='.'yyyy-MM-dd
# INFO uses PatternLayout.
log4j.appender.ERROR.layout=org.apache.log4j.PatternLayout
log4j.appender.ERROR.layout.ConversionPattern=[%-5r][%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l %m%n
#log4j.appender.ERROR.filter=org.apache.log4j.varia.LevelRangeFilter
log4j.appender.ERROR.filter.LevelMin=ERROR
log4j.appender.ERROR.filter.LevelMax=ERROR

2.在类中使用Log4j

package com.tianze.jmsn.test;
import org.apache.log4j.Logger;
public class TestLogger {
    static Logger logger = Logger.getLogger(TestLogger.class.getName());
    public static void main(String[] s){
            logger.debug("----logger debug ----");
            logger.info("----logger info ----");
            logger.warn("----logger warn ----");
            logger.error("----logger errors ----");
            logger.fatal("----logger fatal ----");
//        logger.log(Level.DEBUG, "----logger debug ----");
//        logger.log(Level.INFO, "----logger info ----");
//        logger.log(Level.WARN, "----logger warn ----");
//        logger.log(Level.ERROR, "----logger error ----");
//        logger.log(Level.FATAL, "----logger fatal ----");
    }
}
分享到:
评论

相关推荐

    log4j配置文件例子

    log4j配置文件例子,可以让你轻松配置log4j

    Log4J配置实例(xml格式)

    **Log4J配置实例(XML格式)** Log4J是一款广泛应用的日志记录框架,它为Java应用程序提供了灵活的日志记录功能。在Java开发中,日志记录是必不可少的一部分,可以帮助开发者跟踪程序运行状态,定位错误和调试代码...

    关于log4j的配置和例子

    log4j配置.xls 常用log4j配置,一般可以采用两种方式,.properties和.xml

    log4j(二):动态配置日志输出路径

    在Web应用中,如使用的是Servlet环境,可以通过在`web.xml`中配置`ContextLoaderListener`来加载Log4j配置,同时,我们还可以创建一个Servlet,当接收到特定请求时,更新Log4j配置。 ```xml &lt;!-- web.xml 示例 --&gt; ...

    log4jxml详细分析 例子全

    ### Log4j XML 配置详解与实例解析 在深入探讨`log4j.xml`配置文件之前,我们先简要了解Log4j框架。Log4j是Apache的一个开放源码项目,通过使用Log4j,我们可以控制日志信息输送的目的地(控制台、文件等)、日志...

    log4j配置 输出日志 案例

    `log4j配置输出日志案例.doc`文档中应该包含了更详细的配置和实际运行案例,包括如何调整日志级别、设置过滤器、自定义日志格式等。这些案例可以帮助读者更好地理解和应用log4j,解决实际开发中的日志管理问题。 ##...

    log4j的简单例子

    2. **配置文件**:log4j的核心配置文件是`log4j.properties`或`log4j.xml`,通过这个文件可以定义日志的输出位置、格式和级别。例如,我们可以指定日志输出到控制台、文件、甚至是远程服务器。 3. **布局和格式化**...

    log4j详细配置

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

    log4j及配置文件

    总结来说,Log4j是Java应用中不可或缺的工具,它通过`log4j.properties`配置文件实现了强大的日志管理,使得开发者能够轻松控制日志输出,提升开发效率,同时对系统运行状态进行有效监控。理解并熟练掌握Log4j的配置...

    log4j配置范例

    log4j配置范例,完全手写会遇到困难吗,这是个例子供大家参考

    log4j.properties详解与例子

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

    log4j使用基本配置

    Log4j 是一个广泛使用的Java日志记录框架,它提供了灵活的日志配置和多种日志输出格式,使得开发者能够方便地管理和控制应用程序的输出信息。本文将深入介绍如何配置和使用Log4j。 首先,Log4j 的配置可以通过两种...

    log4j配置文件和jar包

    Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)定义了日志信息的输出方式、级别、目的地等。例如,你可以设置日志信息打印到控制台、写入文件、发送电子邮件或者存储到数据库。配置文件中的主要元素包括...

    Log4j 详细配置

    **Log4j 详细配置** Log4j 是一个广泛使用的 Java 日志框架,它提供了灵活且高效的日志记录功能,适用于各种规模的应用程序。本文将深入探讨 Log4j 的配置,帮助开发者更好地理解和使用这个强大的工具。 ### 1. ...

    log4j配置文件以及配套jar包.rar

    《深入理解Log4j配置与应用》 在Java开发中,日志管理是不可或缺的一部分,它可以帮助我们追踪程序运行状态,定位错误,进行性能分析等。Log4j作为一款广泛使用的日志框架,其配置简单灵活,功能强大,深受开发者...

    log4j多文件输出打印

    例如,在`log4j.properties`配置文件中,我们可以创建两个Appender,分别设置它们的输出目标为`error.log`和`info.log`: ```properties # 定义一个名为ERROR的Appender,用于记录错误级别及以上的日志 log4j....

    0积分:完全相对路径的log4j配置

    ### 完全相对路径的log4j配置 #### 背景与意义 Log4j 是一个基于 Java 的日志框架,广泛应用于企业级应用的日志记录。它提供了灵活的日志记录机制,允许开发者根据需求调整日志级别、格式以及输出目的地等。本文将...

    Log4j的配置与使用方法(以简单程序为例子)

    二、Log4j配置 Log4j的核心配置文件是`log4j.properties`或`log4j.xml`。下面以`log4j.properties`为例,介绍基本配置: 1. 配置日志输出目的地: ``` log4j.appender.FILE=org.apache.log4j.FileAppender log4j...

    log4j使用例子和文档

    Log4j配置 Log4j的配置主要通过`log4j.properties`或`log4j.xml`文件完成。以下是一个简单的配置示例: ```properties # 配置控制台输出 log4j.rootLogger=DEBUG, Console log4j.appender.Console=org.apache.log...

Global site tag (gtag.js) - Google Analytics