`
岁月如歌
  • 浏览: 107220 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Log4j每天或每个月产生一个日志文件

    博客分类:
  • java
阅读更多
Log4j每天或每个月产生一个日志文件
我们开发的B/S结构系统,在服务端一般要有日常运行的日志记录。保存成日志文件形式的时候,大家经常会遇到一个问题:日志文件过大。上百兆的日志文件对 查阅日志信息来说也是一个问题。所以我希望能够每天或每个月产生一个日志文件,这样文件不至于过大。 或者根据日志文件大小来判断,超过规定大小,日志自动增加新文件。
     在log4j中这两种方式的实现都很简单,只要在配置文件中设置即可。

一、按照一定时间产生日志文件,配置文件如下:
     # Set root logger level to ERROR and its only appender to A1.
     log4j.rootLogger=ERROR,R

     # R is set to be a DailyRollingFileAppender.
     log4j.appender.R=org.apache.log4j.DailyRollingFileAppender

     log4j.appender.R.File=backup.log
     log4j.appender.R.DatePattern = '.'yyyy-MM-dd
     log4j.appender.R.layout=org.apache.log4j.PatternLayout
     log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n
    
     以上配置是每天产生一个备份文件。其中备份文件的名字叫backup.log。
     具体的效果是这样:当天的日志信息记录在backup.log文件中,前一天的记录在名称为    backup.log.yyyy-mm-dd 的文件中。
     类似的,如果需要每月产生一个文件可以修改上面的配置:
     将
       log4j.appender.R.DatePattern = '.'yyyy-MM-dd
     改为
         log4j.appender.R.DatePattern = '.'yyyy-MM

二、根据日志文件大小自动产生新日志文件
     配置文件内容如下:

# Set root logger level to ERROR and its only appender to A1.
log4j.rootLogger=ERROR,R

# R is set to be a RollingFileAppender.
log4j.appender.R=org.apache.log4j.RollingFileAppender

log4j.appender.R.File=backup.log
#log4j.appender.R.MaxFileSize=100KB

# Keep one backup file
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n


其中:
#日志文件的大小
log4j.appender.R.MaxFileSize=100KB
# 保存一个备份文件
log4j.appender.R.MaxBackupIndex=1
分享到:
评论

相关推荐

    配置好log4j的eclipse简单工程,每天输出到一个日志文件中,该文件名为:“XXX_年月日时分.log”的形式

    `XXX`可能是你的项目名称或其他标识符,年月日时分是按照`DatePattern`进行填充的,确保每个新产生的日志文件都有唯一的名称,方便管理和查找。 5. **实际应用**: 在代码中,你可以通过以下方式创建并使用Log4j的...

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

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

    log4j 写多个日志文件,按照日期每天都记

    `log4j`是一个广泛使用的Java日志框架,它提供了灵活的日志配置,能够帮助开发者记录程序运行过程中的各种信息。本文将深入探讨如何利用`log4j`实现按照日期每天写入不同日志文件的功能,以及涉及到的相关知识点。 ...

    tomcat下的log4j日志配置

    5. **重启 Tomcat**:重启 Tomcat 后,相应的日志文件将按照 `log4j.properties` 文件中的设置生成。 **优点**:灵活性高,可以针对每个应用定制化日志配置;便于管理和追踪。 **总结**:根据项目的需求选择合适的...

    log4j按功能保存日志

    - 在Log4j的配置文件(通常是`log4j.properties`或`log4j.xml`)中,你可以定义多个Appender,每个Appender对应一个特定的功能或模块。 - 使用`category`或`logger`标签指定Logger的名称,这通常与你的功能模块相...

    log4j多文件输出打印

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

    log4j日志文件乱码解决方法

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

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

    - 要实现不同线程的日志分别输出,我们需要创建一个自定义的Log4j2配置文件(通常为`.xml`或`.json`格式)。配置文件中,我们可以定义多个Appenders(输出目的地),每个Appender可以关联不同的日志级别和线程上...

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

    然而,我们可以创建一个自定义的`org.apache.log4j.FileAppender`子类来覆盖默认行为。这个子类可以重写`setFile()`方法,根据业务逻辑来决定文件名。例如,你可以根据日期、服务名、或者某种业务标识来动态生成...

    log4j日志报错解决办法

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

    log4j生成带时间戳的日志文件(包括extras包以及简单demo)

    这意味着每个日志文件最大为10MB,最多保留10个备份文件。 总结来说,Log4j是一个强大的日志框架,通过使用extras包和适当的配置,我们可以方便地生成带有时间戳的日志文件,进行日志级别的控制,以及有效地管理...

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

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

    log4j 日志配置

    `DailyRollingFileAppender`是Log4j的一个重要组件,它能够按照日期(如每天)创建新的日志文件,避免单个日志文件过大。这个功能对于管理和存储大量日志数据非常有用,可以方便地按日期查找和归档日志。 配置Log4j...

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

    Log4j是Apache软件基金会开发的一个开源项目,主要用于日志记录。它为Java应用程序提供了一种灵活的日志系统,能够方便地控制日志信息的输出级别、格式以及目的地。Log4j的核心价值在于其可配置性,使得开发者可以...

    log4j日志包日志包

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

    log4j记录Debug日志

    10. **日志切割与归档**:Log4j可以配置自动滚动日志文件,比如按日期或大小切割,防止单个日志文件过大,同时支持归档旧的日志文件。 在使用Log4j记录Debug日志时,确保项目中引入了相应的Log4j库,并正确配置了`...

    日志 log4j

    Log4j的配置主要通过一个XML或.properties文件进行,例如`log4j.properties`。配置文件包括了对Logger、Appender、Layout等的设置,例如: ```properties # 设置Root Logger的级别为DEBUG,并将日志输出到控制台和...

    log4j.zip 项目日志

    解压“log4j.zip”后,我们通常会找到一个名为“log4j.properties”或“log4j.xml”的配置文件,这是Log4j的核心配置文件。例如,以下是一个简单的配置示例: ```properties # log4j.properties log4j.rootLogger=...

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

    `Log4j`是一个广泛使用的Java日志框架,它允许开发者控制应用程序的输出日志,包括日志级别、格式和目的地。这篇博客"Log4j 把不同包的日志打印到不同位置"可能详细解释了如何利用Log4j配置来实现特定包的日志定向...

Global site tag (gtag.js) - Google Analytics