`
jarod2008
  • 浏览: 82424 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

log4j日志分级输出到不同文件的配置

阅读更多

【转自】http://www.xmsc.com.cn/InfoView/Article_43501.html

 

例如想只把log4j的debug信息输出到debug.log.error信息输出到error.log,info信息输出到info.log

log4j提供了下面一种方式来实现.

必须使用xml方式进行配置才能够支持filter过滤元素。

配置文件来自:

http://www.mail-archive.com/log4j-user@jakarta.apache.org/msg09720.html

<?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="%c %d{ISO8601}
-- %p -- %m%n"/>
</layout>
</appender>

<appender name="DEBUG" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="C:\\logs\\app-debug.log"/>
<param name="Append" value="true"/>
<param name="MaxFileSize" value="500KB"/>
<param name="MaxBackupIndex" value="2"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%c %d{ISO8601}
-- %p -- %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.RollingFileAppender">
<param name="File" value="C:\\logs\\app-info.log"/>
<param name="Append" value="true"/>
<param name="MaxFileSize" value="500KB"/>
<param name="MaxBackupIndex" value="2"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%c %d{ISO8601}
-- %p -- %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.RollingFileAppender">
<param name="File" value="C:\\logs\\app-warn.log"/>
<param name="Append" value="true"/>
<param name="MaxFileSize" value="500KB"/>
<param name="MaxBackupIndex" value="2"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%c %d{ISO8601}
-- %p -- %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.RollingFileAppender">
<param name="File" value="C:\\logs\\app-error.log"/>
<param name="Append" value="true"/>
<param name="MaxFileSize" value="500KB"/>
<param name="MaxBackupIndex" value="2"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%c %d{ISO8601}
-- %p -- %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="debug"/>
<appender-ref ref="STDOUT"/>
<appender-ref ref="DEBUG"/>
<appender-ref ref="INFO"/>
<appender-ref ref="WARN"/>
<appender-ref ref="ERROR"/>
</root>

</log4j:configuration>

分享到:
评论

相关推荐

    log4j的jar包和配置文件

    Log4j的配置通常通过一个名为`log4j.properties`或`log4j.xml`的文件完成。以下是一个简单的`log4j.properties`配置示例: ```properties # 设置root logger级别为INFO,并将输出到console log4j.rootLogger=INFO, ...

    log4j简单范例 日志文件是相对路径的

    这个“log4j简单范例 日志文件是相对路径的”示例将展示如何配置Log4j来记录日志,并将日志文件保存在程序运行时的相对路径下。 首先,Log4j的核心组件包括Logger(日志器)、Appender(输出目的地)和Layout(格式...

    一种基于Log4J的日志输出组件的设计

    - **配置文件**:利用Log4J的配置文件(如log4j.properties)来指定日志输出的位置、格式等。 - **自定义Appender**:为了满足将日志信息同时写入文件和数据库的需求,需要开发自定义的Appender组件。这种Appender...

    log4j使用手册和配置文件实例

    Log4j的配置文件通常是`log4j.properties`或`log4j.xml`,用于设置日志器、输出器和布局等相关属性。以下是一些基本配置示例: ```properties # 配置控制台输出 log4j.rootLogger=DEBUG, Console log4j.appender....

    log4j详细配置说明

    Log4j 不仅开源免费,还具备高度的灵活性与可配置性,支持多种日志输出目的地(例如控制台、文件、GUI 组件、网络套接字等)以及自定义的日志信息格式。更重要的是,Log4j 通过定义日志级别(例如 FATAL、ERROR、...

    log4j使用配置方法及项目中的应用

    ### log4j使用配置方法及项目中的应用 #### 概述与背景 在软件开发过程中,日志记录是一项至关...通过以上配置,Log4j能够按照预设规则高效、准确地记录和输出日志信息,极大提升了应用程序的可观测性和可维护性。

    Log4j实例

    Log4j是一款广泛应用于Java平台的日志记录框架,它提供了灵活且强大的日志记录功能,使得开发者能够方便地控制日志信息的输出级别、格式以及目的地。本实例将深入探讨Log4j的基本使用方法和配置。 一、Log4j的核心...

    用到的两个log4j日志架包

    本话题将深入探讨"用到的两个log4j日志架包"——`android-logging-log4j-1.0.3.jar`和`log4j-1.2.15.jar`。 首先,`android-logging-log4j-1.0.3.jar`是专门为Android平台设计的日志库,它是Log4j的一个变种,使得...

    Log4cpp 在程序中生成日志文件

    Log4cpp 是基于 Apache 的 Log4j 模型设计的,它提供了一个灵活的日志框架,允许程序员定义不同级别的日志输出,如 DEBUG、INFO、WARN、ERROR 和 FATAL。此外,Log4cpp 还支持多种日志输出目标,如控制台、文件、...

    log4j 基本使用 配置文件 学习笔记

    **log4j基础使用与配置文件详解** 在Java开发中,日志管理是不可或缺...通过阅读《log4j学习笔记.doc》、《log4j.doc》、《log4j配置文件.doc》和《log4j的基本使用.doc》等文档,你将能更深入地掌握log4j的使用技巧。

    关于Log4j的Demo

    5. **Configurator**: 用于配置Log4j的行为,通常通过XML配置文件(log4j.properties或log4j.xml)完成。Demo中可能包含一个示例配置文件,展示如何设置logger的级别、appender及其布局。 **使用步骤** 1. **添加...

    Log4jAPI 应用案例 配置说明 log4jjar包

    配置Log4j主要通过`log4j.properties`或`log4j.xml`文件完成。以下是一个简单的配置示例: ```properties # 设置全局日志级别为INFO log4j.rootLogger=INFO, console, file # 配置控制台输出 log4j.appender....

    Strtus2.3升级2.5(包含log4j升级log4j2)所需jar,和相关资料

    从Log4j升级到Log4j2,可以享受到更高效的日志处理、异步日志记录、动态配置以及支持JSON和XML等格式的日志输出。 在Struts2.3到Struts2.5的升级中,首先需要确保所有依赖的jar文件都与新版本兼容。这包括Struts2的...

    Log4j使用手册

    - 在Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)中,可以定义多个Logger,每个都有不同的输出目的地和级别,允许日志信息同时输出到多个地方,并且格式化方式各异。 - 应用程序代码中,通过`Logger...

    Log4J应用技术.PPT

    Log4J的一个显著优点是,它能够清晰地区分不同级别的日志信息,通过配置文件可轻松改变日志格式和输出位置,而使用`System.out.println`则需要更多手动工作。 与`System.out.println`相比,Log4J的一大优势在于其在...

    log4j-1.2.14.jar1

    在使用`log4j-1.2.14.jar1`之前,需要创建一个配置文件(通常命名为`log4j.properties`或`log4j.xml`),配置日志的输出级别、Appender和Layout。以下是一个简单的配置示例: ```properties # 配置控制台输出 log4j...

    log4j-1.2.17

    log4j的配置主要通过`log4j.properties`或`log4j.xml`文件完成。以下是一个简单的配置示例: ```properties # 设置Root Logger级别为INFO log4j.rootLogger=INFO, stdout, file # 定义Console Appender log4j....

    log4j 使用介绍

    log4j 配置通常通过 XML 或 properties 文件进行,这使得在运行时无需修改代码就能调整日志行为。配置文件可以指定 Loggers、Appenders 和 Layouts,以及它们之间的关系。 **总结** log4j 通过 Logger、Appender 和...

    log4j 本人亲自测试 总结

    - 配置文件通常为`log4j.properties`或`log4j.xml`,用于定义日志的级别、输出目的地、格式等。 - 日志级别包括DEBUG、INFO、WARN、ERROR、FATAL,开发者可以根据需要设置不同级别的日志输出。 3. **Logger的使用...

Global site tag (gtag.js) - Google Analytics