- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
登录版本1.2.3
我想在我们的logback配置文件(logback.xml)中使用SizeAndTimeBasedRollingPolicy,但此时SizeAndTimeBasedRollingPolicy无法按预期运行。 (https://logback.qos.ch/manual/appenders.html#SizeAndTimeBasedRollingPolicy)
理想情况下,我希望保留不晚于前日期的日志。 90 天,每个文件不大于 100MB,总存档大小为 ex。总共 10GB。
就目前而言,totalSizeCap 应用于 MaxHistory 范围内的每个条目。例如。
<appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>mylog.txt</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<!-- rollover daily -->
<fileNamePattern>mylog-%d{yyyy-MM-dd}.%i.txt</fileNamePattern>
<!-- each file should be at most 100MB, keep 60 days worth of history, but at most 20GB -->
<maxFileSize>100MB</maxFileSize>
<maxHistory>60</maxHistory>
<totalSizeCap>1GB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>%msg%n</pattern>
</encoder>
</appender>
上述 XML 配置将创建跨越 60 天的日志,每天应用 1GB 的总大小上限。这将导致存档总大小为 60GB,而不是预期的 1GB。如果在当天达到了 TotalSizeCap,则当天的日志将通过删除当天最旧的文件来开始滚动,这将在日志历史记录中产生间隙,这是我们不希望的。此错误的解决方法是使用每年滚动,而不是每日或每月滚动,不幸的是,使用 SizeAndTimeBasedRollingPolicy 时,每年滚动不起作用。
有人知道这个问题吗?这个问题已经解决了吗?还是我的配置有问题?
最佳答案
看来您发现了一个错误!
日志中不应有间隙。当达到totalSizeCap 时,应删除最旧的日志文件。当达到 maxHistory 时,应删除最旧的日志文件。
不幸的是,logback 中似乎存在一个错误,导致日志记录出现空白,因为没有删除最旧的文件。请参阅此处的演示:https://github.com/riskop/slf4j_logback_SizeAndTimeBasedRollingPolicy_problem
我打开了一个问题:https://jira.qos.ch/browse/LOGBACK-1361
根据 Gülcü 的说法,它将在 logback classic 1.3.0 中修复。
请注意,您可以在 logback 的 Jira 上“投票”该问题!
关于logging - Logback:SizeAndTimeBasedRollingPolicy 将totalSizeCap 应用于maxHistory 中的每一天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47752955/
我正在尝试以一种方式管理我的日志记录,即一旦我的最旧存档日志文件达到总累积大小限制或达到其最大历史记录限制,它们就会被删除。在 Logback 1.1.7 中使用 SizeAndTimeBasedRo
我的 spring 应用程序有以下 logback.xml 配置。我正在使用 SizeAndTimeBasedRollingPolicy,并且我假装按月组织日志(这是 %d{yyyy-MM, aux}
我是一名优秀的程序员,十分优秀!