当前位置: 首页 > 知识库问答 >
问题:

日志:SizeAndTimeBasedRollingPolicy在达到totalSizeCap时删除所有存档文件

倪培
2023-03-14

当达到totalSizeCap限制时,我只想删除旧的存档文件。我使用的是1.2.3版本的logback

这是我正在使用的日志配置。

<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
  	
	    <file>${tivo.logpath}/${tivo.logfilename}.log</file>

		<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
			<!-- Rollover everyday. If file exceeds 1GB within a day, then file is archived with index starting from 0 -->
			<fileNamePattern>${tivo.logpath}/${tivo.logfilename}-%d{yyyyMMdd}-%i.log.gz</fileNamePattern>
			<!-- Each file should be at most 1GB -->
			<maxFileSize>1GB</maxFileSize>
			<!-- Keep maximum 30 days worth of archive files, deleting older ones -->
			<maxHistory>30</maxHistory>
			<!-- Total size of all archived files is at most 5GB -->
			<totalSizeCap>5GB</totalSizeCap>
	    </rollingPolicy>
	
	    <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
			<layout class="com.tivo.logging.logback.layout.JsonLayout">
				<env>${envId}</env>
				<datacenter>${dcId}</datacenter>
				<serverId>${serverId}</serverId>
				<build>${info.properties.buildChange}</build>
				<service>${tivo.appname}</service>
			</layout>
	    </encoder>

  	</appender> 

共有1个答案

奚才良
2023-03-14

看来这是日志版本<1.3.0的一个已知问题。

Logback:SizeAndTimeBasedRollingPolicy将totalSizeCap应用于maxHistory中的每一天

https://jira.qos.ch/browse/logback-1361

 类似资料:
  • 我正在尝试以一种方式管理日志记录,即最早的存档日志文件一旦达到总累积大小限制或达到最大历史记录限制,就会被删除。在Logback 1.1.7中使用时,滚动文件附加器将继续创建新的存档,尽管超过了设置。 这是日志中的一个bug还是我没有正确配置滚动文件附加器?

  • 我在SpringBoot中使用logback,但无法删除旧的日志文件。 我在logback-spring.xml文件中定义了以下appender: 即使我设置了“MaxHistory”和“CleanHistoryonStart”,超过10天的日志文件也不会被删除。既不是翻转也不是启动。

  • 问题内容: 我正在寻找清除整个收藏夹的方法。我看到有一个批处理更新选项,但这需要我知道集合中的所有文档ID。 我正在寻找一种简单地删除集合中每个文档的方法。 谢谢! 编辑:下面的答案是正确的,我使用以下方法: 问题答案: 没有API可以一次性删除整个集合(或其内容)。 从Firestore文档中: 要在Cloud Firestore中删除整个集合或子集合,请检索集合或子集合中的所有文档并将其删除。

  • curl-xdelete“http://localhost:9200/index-consumo_react_mysql/_doc/_query”-d'{“query”:{“match_all”:{}}}‘ 错误: {“错误”:“不支持Content-Type header[application/x-www-form-urlencoded]”,“status”:406}

  • 据我所知,我可以使用云函数以某种方式实现这一点?我试着阅读云函数,但我很迷路。是否有一种方法可以触发云函数,在用户更新帖子时删除子集合中的所有文档?

  • 我对运行在Tomcat7上的Java web应用程序使用spring-mvc和security。我通过扩展AbstractAuthenticationProcessingFilter自定义了spring安全性,为了捕获自定义异常,我有一个扩展ExceptionHandlerExceptionResolver的类。 现在,当我得到一个异常时,无论是否运行时,我都无法在我的tomcat日志中看到异常的