首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在log4j 1.2到log4j 2迁移中,如何处理DailyRollingFileAppender类?

在log4j 1.2到log4j 2迁移中,如何处理DailyRollingFileAppender类?
EN

Stack Overflow用户
提问于 2015-06-17 05:32:30
回答 1查看 25.7K关注 0票数 30

我正在迁移一个log4j项目,从使用log4j 1.2登录到使用log4j 2。

log4j 1.x有一个类org.apache.log4j.DailyRollingFileAppender,这个类在我的项目的log4j.properties配置文件中提到过。同名DailyRollingFileAppender的类在log4j 2中不再存在。我想知道DailyRollingFileAppender的角色是否可以被其他类(Es)替代,或者在log4j 2中替代配置或实现。

迁移指南强调,应用程序不能访问log4j 1.x内部的方法和类,例如Appenders,这样才能迁移到log4j 2。但是为了进行迁移,可以对DailyRollingFileAppender做些什么?是否可以用自定义配置或log4j 2中的类组合来替换它?尤其是迁移指南中的一些配置示例,其中一个带有FileAppender,但是DailyRollingFileAppender呢?它与基本的FileAppender非常接近

来自log4j 1.2APIJavadocorg.apache.log4j.DailyRollingFileAppender

DailyRollingFileAppender扩展了FileAppender,以便以用户选择的频率滚动底层文件。观察到DailyRollingFileAppender存在同步问题和数据丢失。log4j附加部分包括在新部署时应该考虑的替代方案,这些选项将在org.apache.log4j.rolling.RollingFileAppender文档中讨论。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-18 15:01:27

您正在寻找RollingFile附件

代码语言:javascript
复制
<RollingFile name="DAILY_LOG" fileName="log/daily.log"
                 filePattern="log/%d{ddMMyyyy}_daily.log"
                 >
      <PatternLayout pattern="%d [%7r] %5p - %c - %m%n"/>
      <Policies>
        <TimeBasedTriggeringPolicy interval="1"/>
      </Policies>                               
</RollingFile>

前面的示例按日滚动,间隔为1单位,由文件模式中的日期查找的最小单位确定。换句话说,如果日期模式是d{MMyyyy},那么interval=1对应于一个月的滚动期。

请注意,目前不支持限制超过某一日期或年龄的日志文件的数量。您只能限制每个时间段的日志文件数量。

票数 30
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30882982

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档