`
liyonghui160com
  • 浏览: 761775 次
  • 性别: 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。 www_bitscn_com 
    具体的效果是这样:当天的日志信息记录在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输出多个自定义路径的日志文件小例子

    本工程主要实现log4j输出多个自定义路径的日志文件,为方便大家使用

    log4j多文件输出打印

    log4j、日志输出、自定义日志、多文件输出。

    LOG4CPP多个日志文件

    LOG4CPP 支持多个文件,DEBUG/NOTICE/WARNING/ERROR/CRITICAL分别打到不同的文件

    log4j使用实战

    log4j推荐和slf4j一起用,关于log4j和slf4j, 参考:https://blog.csdn.net/haoranhaoshi/article/details/89929470上半部分。 log4j.appender.File.File=${user.dir}/logs/hmiservice.log ${user.dir}可以得到当前...

    java自定义日志输出文件(log4j日志文件输出多个自定义日志文件)

    打印日志的在程序中是必不可少的,如果需要将不同的日志打印到不同的地方,则需要定义不同的Appender,然后定义每一个Appender的日志级别、打印形式和日志的输出路径,下面看一个示例吧

    log4j 日志服务器

    log4j 日志服务器 一个系统可能有多个子系统组成,这些子系统都有自己的日志,并且运行在不同的操作系统和主机上,收集这些日志对运营人员来说也比较困难。 因此决定在平台中采用日志服务器来做到集中日志管理,平台...

    log4j-socketappender:自定义 Log4J 的 SocketAppender,在日志服务器和调用事件的各种客户端之间进行通信

    自定义 Log4J 的 SocketAppender,在日志服务器和调用事件的各种客户端之间进行通信。 如何使用:AsynchListener - 通知程序 - 当日志服务器在特定端口和机器上准备就绪时,通知日志客户端是否准备好调用通知。 ...

    zlog---比log4c更牛的c语言日志库

    可以灵活配置日志输出的格式,类似于log4j的pattern layout 纲目分类模型,比log4j系列的继承模型更加清晰 多种输出,包括动态文件、静态文件、stdout、stderr、syslog 可以在运行时动态刷新配置,只需要调用函数...

    Javascript日志输出管理工具Log4Jse.zip

    Log4Jse是一个非常简洁、可定制的Javascript日志输出管理工具,类似Log4J,但是比它简单很多,可以实现自定义日志输出级别、自定义日志输出方式等功能。 示例代码: // Usage: var mylog = Logger.get("app"); mylog...

    Log4net 日志查看器

    实时查看log4net输出的日志,支持如下功能: 支持同时收集多个APP的日志,并且提供筛选功能 支持按照线程ID进行筛选日志 支持通过日志名称筛选日志 支持一键清空显示区域的所有日志 支持自动滚动或者禁止自动滚动 ...

    logtxt-命名行记录日志

    logtxt.exe 为命令行记录日志软件. ...logtxt.exe.config 配置文件内可以更改自定义内容. 软件运行需要.net 4.6.1或以上 项目代码地址: https://github.com/NianJiTao/nianjitao/tree/master/NJT/LogTxt

    文本切割器,用于大文本(.log)切割

    日志文件有时在阅读时加载几乎缓慢,大部分切割器一般不支持多文件或切割速度较慢,且无法满足用户自定义的需求。考虑编程实现,利用Python编程语言可以快捷地完成将大文本文件分割成多个小文件,并且拥有非常快的...

    基于SuperSocket的中央日志服务器.rar

    这个 log4net 配置定义了多个 loggers 和 appenders 将所有日志分类输出到 "Logs"目录下的四个文件: info.log debug.log err.log perf.log 你也可以根据你自己的需要定制这个配置文件。 由于SuperSocket项目...

    LogReader:Log4j日志文件的日志读取器

    可以在使用标准log4j模式的设置中定义多个自定义布局模式(例如,%d {yyyy-dd-MM HH:mm:SS,SSS}%c%p%m)现在,可以按选定的属性或按两次单击左侧TreeTable中的一个项目。 可以通过运行“ mvn clean package...

    Nginx自定义访问日志的配置方式

    前言 Nginx日志主要分为两种:访问日志和错误...就我们普通的JAVAWEB项目来说,重要的日志一般输出并存放在Tomcat的log目录下,并区分日志输出级别。用于区分,查阅并统计相关日志信息。 当然,这不是重点,重点是很多

    SLF4M:Matlab的简单日志记录框架,建立在SLF4J和Log4j之上-matlab开发

    SLF4M是用于Matlab的简单但灵活的日志记录框架,建立在SLF4J和Apache Log4j的基础上。 您可以使用它从Matlab脚本和程序中进行可在运行时配置的日志记录。 与在内部注释和注释掉fprintf()语句相比,这可以提供更多...

    如何编写批处理文件批处理文件批处理文件

    简明批处理教程22009年10月20日 星期二 下午 05:35 最近对于批处理技术的探讨比较热,也有不少好的批处理程序发布,但是如果没有一定的相关知识恐怕不容易看懂和理解这些批处理文件,也就更谈不上自己动手编写了,古...

    spdlog-0.14.0.zip

    spdlog 是一个快速的 C++ 日志库,只包含头文件,兼容 C++11。 特性: 非常快 只包含头文件 无需依赖第三方库 支持跨平台 - Linux / Windows on 32/64 bits 支持多线程 可对日志文件进行循环输出 可...

    崩溃日志上传框架LogReport.zip

    也支持在Wifi和移动网络下上传支持保存Log日志在打印Log的同时,把Log写入到本地(保存的时候会附带线程名称,线程id,打印时间),还原用户操作路径,为修复崩溃提供更多细节信息GitHub自动提交issue使用邮件发送的...

    纯C日志函数库zlog.zip

    事实上,在C的世界里面没有特别好的日志函数库(就像JAVA里面的的log4j,或者C 的log4cxx)。C程序员都喜欢用自己的轮子。printf就是个挺好的轮子,但没办法通过配置改变日志的格式或者输出文件。syslog是个系统...

Global site tag (gtag.js) - Google Analytics