转自:http://blog.csdn.net/vtopqx/article/details/8432862

在做项目中基本上都用到了日志log,那么自然就会遇到问题,比方说,日志太大了怎么办?日志很乱怎么办?

这时我们就会想到如果能够把日志分为定时的生成即:Log4j每天、每小时、每分钟定时生成日志文件这样多好,既可以方便存储亦利于查看。针对这个一想法,本人做了下测试,发现效果还是可以的,特把代码以及配置贴出以便初学者参考:

一、首先添加必须的jar文件,如:commons-logging.jar、log4j.jar等这些,这个就不说了;

二、Web.xml配置:

<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>

一定要加上这个监听,测试过好几遍,如果不加上此监听,那么无法定时把Log中的数据存储到文件中,即:定时生成日志文件;

三、log4j.properties文件编写: 

下面为此次关键的部分

#LogFile Write
log4j.logger.logcase= INFO, dufLog
log4j.appender.dufLog=org.apache.log4j.DailyRollingFileAppender
log4j.appender.dufLog.File=${webapp.root}WEB-INF/logfiles/logcase/logcase
log4j.appender.dufLog.DatePattern = '_'yyyy-MM-dd-HH-mm'.log'
log4j.appender.dufLog.MaxFileSize=10MB
log4j.appender.dufLog.layout=org.apache.log4j.PatternLayout
log4j.appender.dufLog.layout.ConversionPattern=%d%n%m%n

其中logcase为所需要产生日志的bean中所定义的;一般来说,一个项目中有很多种日志,即:每种日志生成不同的文件,如:有服务启动日志,有bug处理日志.....为了不让所有的日志在一起混合,所以就需要自定义日志来针对不同的功能模块;

上面${webapp.root}默认表示项目的根目录,整句表示日志文件将处于目录:WEB-INF/logfiles/logcase/logcase;

DatePattern中配置的'_'yyyy-MM-dd-HH-mm'.log' 意思是根据这个时间来定时生成文件,并且把'_'yyyy-MM-dd-HH-mm'.log'附加在原文件的后面,即:logcase_'yyyy-MM-dd-HH-mm'.log', 由于定义到mm所以就每分钟生成一次。

四、Log产生Bean<这里使用Struts2来测试>;

这里的自定义Log标识:logcase就必须要与log4j.properties中的相对应,

好,上面的配置已经完成,启动服务、运行次Action中的方法,即可记录日志信息,如下图所示:

Log4j每天、每小时、每分钟定时生成日志文件相关推荐

  1. log4j每天/每小时/每分钟生成多个日志文件

    1 生成多个日志文件 每天生成一个日志文件的log4j.properties配置为 log4j.rootLogger=INFO,console,file # ALL TRACE DEBUG INFO ...

  2. 【Java编程系列】log4j配置日志按级别分别生成日志文件

    热门系列: [Java编程系列]WebService的使用 [Java编程系列]在Spring MVC中使用工具类调用Service层时,Service类为null如何解决 [Java编程系列]Spr ...

  3. SpringBoot生成日志文件---logback和log4j

    SpringBoot生成日志文件---logback和log4j 一.logback logback是SpringBoot自带的日志文件,默认会为控制台输出INFO级别的日志,并且不会将日志文件保存. ...

  4. log4j按日期和文件大小生成日志文件

    log4j按日期和文件大小生成日志文件 最近在做日志输出保存,按日期和文件大小生成日志文件,比如说生成的日志文件路径为.../20190820/log.log,log1.log,log2.log.其2 ...

  5. java生成日志文件_java - 把日志生成到指定目录

    1.按天小时生成日志文件 log4j.appender.ruiming.DatePattern='_'yyyy-MM-dd-HH 2.最大日志文件数据 log4j.appender.ruiming.M ...

  6. Node.js 在本地生成日志文件

    文章目录 Node.js 在本地生成日志文件 1.前言 2.什么是 fs 3.new console.Console(stdout, stderr, ignoreErrors) 4.node.js 生 ...

  7. java 写日志太快_Log4j2 快速入门 —— 定期/定大小生成日志文件(三)

    Log4j2 对于生成日志文件时,可以通过对中的进行设置,来完整日志文件各种生成方案 定期生成日志文件 log4j2.xml user/logs filePattern="${LOG_HOM ...

  8. NGINX按天生成日志文件的简易配置

    NGINX按天生成日志文件的简易配置 0x01 最近后端童鞋遇到一个小需求,拆分nginx生成的log文件,最好是按天生成,看着她还有很多bug待改的状态,我说这个简单啊,我来吧.曾经搞node后端的 ...

  9. logback无法生成日志文件之谜

    前言 spring一般需要打印日志,不然无法定位问题,也会增加调试难度,而目前和spring搭配的比较火的日志库是logback 使用方法很简单,直接在该位置加入一个xml的配置文件即可(配置文件示例 ...

最新文章

  1. PostgreSQL — 外键关联操作
  2. Java 寻找幸运数
  3. python爬携程_python爬虫-携程-eleven参数
  4. hive初识.docx
  5. 打印product所有attachment 具体信息的小工具
  6. 1+X web中级 Laravel学习笔记——blade模版
  7. SpringBoot官方热部署和远程调试神器,真带劲!
  8. Nagios 监控
  9. ajax的post方式传数组参数
  10. vb取消文本框的粘贴功能
  11. Python命令行版本的员工管理系统
  12. 10个免费的web压力测试工具
  13. linux汉诺塔实验报告,汉诺塔问题实验报告
  14. 区块链学习笔记12——BTC思考
  15. 设计模式 | 装饰者模式及典型应用
  16. 史玉柱和他老同学的一段故事
  17. A Retinex based GAN Pipeline to Utilize Paired and Unpaired Datasets for Enhancing Low Light Images
  18. STM32之时钟输出功能
  19. Java语言发展概述
  20. 查看linux设备Ran的大小,linux – 来自/ dev / zero和/ dev / urandom的不同文件大小

热门文章

  1. VSTS Code Analysis 错误 CA1014 CLSCompliantAttribute 及Suppress Message (镇压Code Ananlysis)...
  2. 网络协议必会知识点:互联网网络分层
  3. 第九次会议(5.14)
  4. centos 7 安装docker 并设置阿里云镜像仓库
  5. 第一个程序实现登录功能,密码输错三次封账号。
  6. 使用jquery.qrcode生成二维码(转)
  7. 输入几个数字,用逗号隔开系列例题
  8. HDU OJ 5437 Alisha’s Party 2015online A
  9. Python网络编程2:创建套接字和套接字对象的内建方法
  10. LeetCode 3. 无重复字符的最长子串(Longest Substring Without Repeating Characters)