`
bbwang8088
  • 浏览: 46056 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Log4j根据级别输出到不同文件

 
阅读更多

 首先,Log4J中经常使用到的级别优先级从底到高依次为:

DEBUG < INFO < WARN < ERROR < FATAL

分别对应程序中的logger.debug(”“) < logger.info(”“) < logger.warn(”“) < logger.error(”“) < logger.fatal(”“)

 

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>
	<appender name="UserInfoDailyRollingFileAppender" class="org.apache.log4j.DailyRollingFileAppender">
        <param name="File" value="log\\user_"/>  
        <param name="Append" value="true"/>  
        <param name="Encoding" value="UTF-8"/>
        <param name="DatePattern" value="yyyy-MM-dd-HH'.log'"/>   
        <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="INFO" />    
 	 		<param name="LevelMax" value="ERROR" />    
		</filter>  
    </appender>
    
<appender name="DebugInfoDailyRollingFileAppender" class="org.apache.log4j.DailyRollingFileAppender">
        <param name="File" value="log\\debug_"/>  
        <param name="Append" value="true"/>  
        <param name="Encoding" value="UTF-8"/> 
        <param name="DatePattern" value="yyyy-MM-dd-HH'.log'"/>   
        <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>
	<root>
	 	<priority value ="info"/>  
		<appender-ref ref="UserInfoDailyRollingFileAppender" />
		<appender-ref ref="DebugInfoDailyRollingFileAppender" />
	</root>
</log4j:configuration>

 

 

   定义INFO<=级别<=ERROR的日志输出。

        <filter class="org.apache.log4j.varia.LevelRangeFilter">    
 	 		<param name="LevelMin" value="INFO" />    
 	 		<param name="LevelMax" value="ERROR" />    
		</filter> 

 

每一句Log输出的前缀为 [yyyy/MM/dd HH:mm:ss] 的样子。

        <layout class="org.apache.log4j.PatternLayout">  
 			<param name="ConversionPattern" value="[%d{yyyy/MM/dd HH:mm:ss}]%m%n" />
        </layout>

 

每小时输出一个文件,注意Log4j会在当前小时中首先把日志保存到临时文件"user_",当时间切换到下一小时时才会生成user_yyyy-MM-dd-HH.log

<param name="DatePattern" value="yyyy-MM-dd-HH'.log'"/
分享到:
评论

相关推荐

    Log4j2实现不同线程不同级别日志输出到不同的文件中

    在“Log4j2实现不同线程不同级别日志输出到不同的文件中”这个主题中,我们将深入探讨如何利用Log4j2实现这一高级日志管理需求。 1. **日志级别**: - 在Log4j2中,日志级别包括DEBUG、INFO、WARN、ERROR、FATAL...

    log4j多文件输出打印

    在"Log4j多文件输出打印"的场景下,我们通常会配置多个Appender,每个Appender对应一个不同的输出文件。这样,不同的日志信息可以被分别写入不同的文件,便于管理和分析。例如,在`log4j.properties`配置文件中,...

    log4j2在项目中的配置,对不同级别的日志进行不同文件的存储

    本文将详细解释如何配置Log4j2以实现不同级别的日志分别存储到不同的文件中。 首先,确保在项目中正确引入了Log4j2的jar包。通常,这可以通过在Maven或Gradle构建文件中添加依赖来完成。对于Maven,可以在pom.xml...

    Log4j按级别输出日志到不同文件的实现方法

    以下是一个基于文本配置(`log4j.properties`)的示例,展示了如何设置不同的日志级别输出到各自的文件: ```properties # 设置root logger级别为info,并将其输出到stdout和多个文件appender log4j.rootLogger=...

    log4j的eclipse工程,输出到文件的方式配置log4j

    标题"log4j的eclipse工程,输出到文件的方式配置log4j"表明我们关注的是在Eclipse开发环境中如何利用log4j框架将日志信息输出到文件。Log4j是Apache的一个开源项目,它提供了一个灵活的日志系统,允许开发者在运行时...

    mybatis,log4j打印日志到后台和文件

    本文将深入探讨如何在 MyBatis 中配置 Log4j,实现日志同时输出到后台控制台和文件。 1. **日志框架集成** 在 MyBatis 中,我们通常会依赖日志框架如 Log4j、Logback 或 JDK 内置的日志系统。Log4j 以其强大的功能...

    Log4j将System.out搞到log4j中输出四

    在《Log4j将System.out搞到log4j中输出四》这篇博文中,作者可能详细讨论了这些步骤,并可能分享了一些实战经验。通过学习这篇博文,读者可以更深入地了解如何在实际项目中实现这一转换,提升日志管理的效率。 总结...

    Log4j 把不同包的日志打印到不同位置

    这篇博客"Log4j 把不同包的日志打印到不同位置"可能详细解释了如何利用Log4j配置来实现特定包的日志定向输出,以便于管理和分析来自不同模块的日志信息。 在Java应用中,我们常常会遇到多个模块或者不同包的类同时...

    log4j 不同级别 不同文件 发送邮件配置

    在这个特定的配置场景中,我们将探讨如何设置log4j,使其能将不同级别的日志信息分别记录到不同的文件中,并且具备发送邮件通知的能力。 首先,我们需要创建一个log4j的配置文件,通常命名为`log4j.properties`。这...

    log4j-1.2.17的jar包以及依赖包,还有一份log4j的配置文件,输出到控制台和文件夹两种配置

    在`log4j.properties`中,可能会定义多个Appender,比如将日志输出到控制台(ConsoleAppender)和文件(FileAppender)。 3. **Layouts**: Layout定义了日志信息的格式。常见的Layout有PatternLayout,可以自定义...

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

    Log4j 的输出级别和输出目的地是配置 Log4j 的两个重要方面。输出级别定义了日志信息的严重程度,而输出目的地定义了日志信息的输出目标。下面是一个基本的 Log4j 输出级别和输出目的地配置: ``` log4j.root...

    log4j-控制指定类,包的日志级别:log4j-demo.zip

    在Log4j中,控制日志级别主要通过配置文件`log4j.properties`或`log4j.xml`来实现。在提供的压缩包`log4j-demo`中,我们可以找到这样的配置文件。例如,如果我们想要控制特定类`com.example.MyClass`的日志级别为...

    Log4j不同模块输出到不同的文件中

    通过以上配置,我们可以实现Log4j将不同模块的日志信息分别输出到不同的文件,并且根据时间自动滚动。这不仅方便了日志的管理,也提高了问题定位的效率。在实际应用中,可以根据需要添加更多模块的配置,灵活调整...

    log4j.properties配置文件

    Log4j支持以下几种级别的日志输出:OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL。这些级别按照从高到低的顺序排列,其中OFF级别表示不输出任何日志,而ALL级别则表示输出所有级别的日志。在实际应用中,开发者可以...

    log4j不同级别日志分不同文件记录

    本文将详细介绍如何使用 Log4j 将不同级别的日志记录到不同的文件中。 #### 日志级别 在 Log4j 中,日志级别包括以下几种: - **TRACE**:用于记录最详细的日志信息。 - **DEBUG**:用于记录调试信息。 - **INFO*...

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

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

    log4j输出多个自定义路径的日志文件小例子

    在这个例子中,我们为每个日志文件创建了一个独立的日志器,通过`Logger.getLogger()`方法传入不同的名字,这样Log4j会根据配置文件中的Appender名字来决定日志的输出位置。 通过这种方式,我们可以在一个项目中...

    log4j.jar包,和log4j.properties配置文件下载

    在实际应用中,将`log4j.jar`添加到项目的类路径中,并根据项目需求定制`log4j.properties`,即可实现有效的日志管理。这不仅有助于问题排查,也有利于系统维护和性能优化,因为过多的日志可能会占用大量磁盘空间,...

    动态设置log4j的日志级别

    总结来说,动态设置Log4j的日志级别是提高应用灵活性的重要手段,可以根据运行时的需求调整日志输出的详细程度,同时避免不必要的重启操作。通过配置文件、API、JMX以及Web界面等多种方式,开发者可以方便地实现这一...

Global site tag (gtag.js) - Google Analytics