《第三节-附录1》介绍RollingFileAppender的使用

这篇博客详细介绍了Logback的RollingFileAppender,包括TimeBasedRollingPolicy和SizeAndTimeBasedRollingPolicy的使用。TimeBasedRollingPolicy依据时间创建日志文件,而SizeAndTimeBasedRollingPolicy结合了日期和文件大小限制。FixedWindowRollingPolicy虽然不常用,但也进行了提及。
摘要由CSDN通过智能技术生成

该节用于对《第三节》解读Logback的配置文件 内容的补充!
因为RollingFileAppender很常用,又相对复杂,所以单独一篇介绍,作为《第三节》的附录。

RollingFileAppender

该组件的属性包括fileappendencoderrollingPolicytriggeringPolicy,其中rollingPolicy和triggeringPolicy必须同时存在,当然,如果有一个类同时继承了这两个接口,也是可以的。
fileappendencoder不再介绍,参照《第三节》解读Logback的配置文件,主要对rollingPolicytriggeringPolicy介绍。

  • rollingPolicy接口:提供了文件移动或重命名等操作策略,负责干什么,有以下几个实现:
  • triggeringPolicy接口:负责什么时候执行操作,负责时机

实现组件

上述接口不能用来引用,所以官方提供了几个常用的实现组件,挨个介绍一下。

1. TimeBasedRollingPolicy
  • 该实现很常用,主要使用场景:根据时间的推进不断创建日志文件。
  • 实际上:TimeBasedRollingPolicy同时实现了rollingPolicytriggeringPolicy接口,可以直接使用。
  • TimeBasedRollingPolicy中日志滚动策略不是根据时钟触发的,而是在记录日志同时判断的,所以如果没有日志被记录,即使过了0点,可能也不会生成当天新的日志文件,什么时候有日志被记录什么时候生成。
属性 类型 描述
file String 如果配置了<file>,满足策略时,将新建一个<file>文件,原来的<file>文件被重命名为fileNamePattern定义的规则文件,如1日写入log.log,2日把log.log重命名为1.log,并新建log.log继续写日志,即日志将永远写入<file>指定的文件;否则日志不断写入到规则定义的新文件,如1日写入1.log,2日写入2.log,1.log成为历史文件。【建议省略该配置,防止文件占用时无法重命名】
fileNamePattern String (必须)使用%d{yyyy-MM}格式指定文件名命名规则;如果存在多个%d{},只能有一个生效,其他需要标记为%d{yyyy-MM,aux}%d{}如果省略{}%d等价于%d{yyyy-MM-dd}
maxHistory int (可选)最多保留多少日志文件
totalSizeCap int (可选)日志总容量(不是单个日志容量)上限,超限后删除最旧的日志;需要同时设置maxHistory,且优先级比maxHistory
cleanHistoryOnStart boolean true:表示项目启动时执行删除策略;false:表示在日志滚动中执行删除策略(默认)

fileNamePattern中可以定义带有目录的命名规则,如/foo/%d{yyyy-MM,aux}/%d.log,/\都可以作为路径分隔符。
如果希望

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: RollingFileAppender 是 Apache Log4j 中的一种日志记录器。它将日志记录到指定的文件中,并在文件大小达到一定限制时进行滚动。这样可以避免单个日志文件过大,导致性能下降和存储空间不足等问题。 ### 回答2: RollingFileAppender是一个在日志框架中常用的文件追加器,用于将日志消息写入到文件中。它的主要特点是可以实现日志文件的滚动和自动归档功能。 滚动是指当日志文件达到一定大小或者一定时间后,自动将当前日志文件关闭,并创建一个新的日志文件继续写入。这样可以避免单个日志文件过大导致读写效率下降,也可以方便地对日志进行归档备份和管理。 RollingFileAppender还支持根据时间来滚动日志文件,例如每天生成一个新的文件。这样可以方便地按照日期来查找和检索日志信息,提高日志的查看和维护效率。 RollingFileAppender还可以配置日志文件的文件名、目录位置以及文件的最大大小等参数。这样可以根据实际需求来进行灵活的配置,满足不同场景下的日志记录要求。 总的来说,RollingFileAppender是一个功能强大且灵活的文件追加器,可以方便地将日志信息写入文件并实现自动滚动和归档。它在各种日志框架中被广泛应用,并在实际项目中提供了方便的日志记录和管理支持。 ### 回答3: rollingfileappender是log4j和logback等日志框架中的一个附加器(appender),用于将日志记录写入到滚动的文件中。它是一种文件追加器,可以将日志消息写入到指定的文件中。 rollingfileappender具有以下特点: 1. 滚动文件:rollingfileappender具有滚动(rolling)的特性,即可以在日志文件达到一定大小或滚动时间间隔时自动创建一个新的日志文件。这样可以保证日志文件的大小和数量都在一定范围内,方便管理和查阅。 2. 文件保留策略:rollingfileappender可以指定保留的日志文件数量。一旦日志文件数量超过设定的值,旧的日志文件会被自动删除,以保证磁盘空间的有效利用。 3. 日志文件命名:rollingfileappender可以根据一定的规则来命名生成的滚动日志文件。例如,可以按日期,文件大小等规则来命名文件,以便更好地区分和管理日志文件。 4. 支持压缩:一些rollingfileappender可以支持将旧的日志文件进行压缩,以减少磁盘空间占用。 rollingfileappender使用非常广泛,可以满足大部分日志需求。通过使用rollingfileappender,我们可以方便地管理和查看日志文件,保证系统的正确运行和故障排查。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值