`

每天产生一个日志

阅读更多

为Log4j配置appender,我现在已经学会了RollingFileAppender的配置,不过总是觉得不太方便,能不能让Log4j帮我这样记录日志:

1.我想日志按天来记录,比如我制定一个文件名前缀为Web_Log,然后Log4j自动什么每天的日志,如Web_Log 2004-7-29.log,Web_Log 2004-7-30.log ...
2.如果这个功能实现的话,可不可以限定每个日志文件的大小(如5M),如果长度超出的话,自动分割日志(比如2004-7-29的日志为16M,分割成 3个文件 Web_Log 2004-7-29.log.1,Web_Log 2004-7-29.log.2,Web_Log 2004-7-29.log.3)

帮我按两个功能点分别实现,谢谢:>

--------------------------------------------------------
还有一点疑惑的就是,整个Log4j帮助文档根本没有系统的对log4j.properties配置说的详细说明,比如
log4j.appender.R.File=d:/log/example.log
File这个配置项,我是看了别人的示例才知道有他的存在,这个我从什么地方可以得到完整的说明呢?


---------------------------------------------------------------

你说的功能Log4j都有,好好找找..
---------------------------------------------------------------

http://tech.ccidnet.com/pub/article/c985_a51061_p1.html

下面是一个典型的log4j.properties属性文件。 

# 默认日志级别ERROR。其他可供选择的级别包括INFO和DEBUG
log4j.rootLogger=ERROR, ROOT
log4j.appender.ROOT=org.apache.log4j.RollingFileAppender
log4j.appender.ROOT.File=myapplication.log
log4j.appender.ROOT.MaxFileSize=1000KB
# 保留5个旧的日志文件
log4j.appender.ROOT.MaxBackupIndex=5
log4j.appender.ROOT.layout=org.apache.log4j.PatternLayout
# 日志格式:按照WebSphere通用日志格式相似的方式记录
log4j.appender.ROOT.layout.ConversionPattern=[%d] %t %c %-5p - %m%n
# 有选择地更改某些包或者类的日志级别
log4j.logger.com.webage.ejbs=INFO
---------------------------------------------------------------
http://dev.csdn.net/article/31827.shtm

    我们开发的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的文档共享一下,其实也就是楼上说的那些东西,没啥子!!  log4j使用起来很easy的

分享到:
评论

相关推荐

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

    log4j配置文件以及配置文件说明 包里有一个log4j配置文件 和一个配置详解

    日志管理系统mysql数据库设计

    该企业拥有多个业务系统,每天会产生大量的日志数据。由于日志数据量庞大,人工处理和管理这些数据非常困难。因此,该企业需要一个系统来自动化管理这些日志数据,以便更好地监控业务系统的运行情况,并快速发现和...

    Windows日志与入侵检测

    日志每天为我们忠实的记录着系统所发生一切,利用系统日志文件,可以使系统管理员快速对潜在的系统入侵作出记录和预测,但遗憾的是目前绝大多数的人都忽略了它的存在。反而是因为黑客们光临才会使我们想起这个重要的...

    Android 本地日志记录

    1.自动记录崩溃信息,设备信息; 2.手动添加想要的Log信息; 3.每天产生一份日志,可以设置保存N天的日志

    windows系统日志备份脚本

    用来将系统日志剪切至其他位置保存,可以在每天产生大量日志的服务器上应用,因为windows本身的日志是有上限的,好像是几百兆吧,用这个备份就不怕日志满了

    Android本地日志记录

    1.自动记录崩溃信息,设备信息; 2.手动添加想要的Log信息; 3.每天产生一份日志,可以设置保存N天的日志

    大数据分析-网站日志数据文件(Hadoop部署分析资料)

    本次要实践的数据日志来源于国内某技术学习论坛,该论坛由某培训机构主办,汇聚了众多技术学习者,每天都有人发帖、回帖。至此,我们通过Python网络爬虫手段进行数据抓取,将我们网站数据(2013-05-30,2013-05-31)...

    Log4j日志管理系统简单使用说明

     org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),  org.apache.log4j.WriterAppender(将日志信息...

    sql每天自动备份自动清除

    Sql备份数据库和日志自动清除设置方法。

    Rackspace的日志处理

     通过系统传输Rackspace用户的邮件产生了相当大的“文件”路径信息,它们以各种格式的日志文件的形式存放,每天大约有150 GB。聚集这些数据对系统发展规划以及了解用户如何使用我们的系统是非常有帮助的,并且,...

    非常简单实用的日志记录软件,按天存放为txt文本

    软件运行过程中,可将需要的信息、数据、或异常打印到文本中,每天产生一个新的文本,一般日志和异常日志分开存放。

    Nginx自动日志切割

    Nginx 自动 日志 切割 Nginx在运行时,每天会产生一定量的日志信息! 如果不对这些日志进行切割,会造成磁盘空间的浪费和查找错误的时间的增长!

    通用java日志记录开发包,短小而精悍,适合各种大小项目

    #日志文件生成周期,分别为 0:不周期性产生文件;1:分钟;2:每小时;3:每天;4:每星期;5:每月;6:每年(重启后生效) logFileCycle=5 #当logFileCycle为1时有效,指定分钟数(重启后生效) logCycleMinutes=15 ...

    io-file.rar_java 文件操作_java 日志_日志 java

    电信设备产生的大量的日志文件的内容需要写入到数据库中,设备在每天将产生数以百计的日志文件,这些日志文件的内容存储遵循一定的格式,本文件实现将这些文件内容合并到一个文件中去,读者可以参考部分对java file ...

    log4j2的配置案例,可直接使用

    文件输出器“debug_appender”只会输出级别为“debug”和“info”之间的日志信息,输出到文件“debug.log”中,每天产生一个新的日志文件,同时在日志文件大小达到10MB时,会产生一个新的文件。输出格式同控制台输出...

    论文研究-基于搜索日志的用户行为分析 .pdf

    基于搜索日志的用户行为分析,陈鹏,吴伟明,搜索作为互联网服务重要服务之一,每天有上亿的网民使用,并由此产生大量的搜索记录。本文通过对搜狗搜索日志分析,力求通过查询

    SQL Server日志文件不断增长处理方法

     2、所有没有提交的事务所产生的日志及其后续的日志记录:  所有日志都有严格顺序,不能有跳跃。  3、要做备份的日志记录:  如果恢复模式不是简单模式,那么SQLServer会认为用户是要去备份日志记录的。...

    论文研究-云计算环境中的日志存储分析系统的设计与实现 .pdf

    云计算环境中的日志存储分析系统的设计与实现,王超,徐鹏,随着云计算技术的发展,每天都有海量的数据在云中产生,如何处理云计算系统和云中应用产生的海量日志数据的采集,存储,分析成为

    CentOS 7.0下nginx实现每天定时分割日志

    大家都知道Nginx产生的日志都是存在一个文件,随着网站运行时间越长,日志文件的大小也在不断增长,所以这个时候就需要实现定时分割,这篇文章主要介绍了在CentOS 7.0下nginx实现每天定时分割日志的相关资料,需要的...

    新闻日志大数据分析及可视化系统的设计与实现.doc

    每天都有着大量的用户关注各类新闻,特别是随着各种网络通信技术的发展,网络应用的普及使得每时每刻都有着大量的人们通过网络进行各类新闻的搜索,产生海量的日志数据。过去使用单机的方式通过 MySQL数据库对这些...

Global site tag (gtag.js) - Google Analytics