任何帮助或暗示将非常感谢!!
我的SpringBoot应用程序只记录了1天。我要它记录超过30天。
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<charset>UTF-8</charset>
<pattern>${CONSOLE_LOG_PATTERN}</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<charset>UTF-8</charset>
<pattern>${FILE_LOG_PATTERN}</pattern>
</encoder>
<file>${LOG_FILE}</file>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>${LOG_FILE}.%i</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>10</maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>10MB</MaxFileSize>
</triggeringPolicy>
</appender>
<logger name="ca.test.hub" level="INFO" additivity="false">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
</logger>
<logger name="org.apache.cxf" level="INFO" additivity="false">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
</logger>
<logger name="org.hibernate" level="DEBUG" additivity="false">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
</logger>
<logger name="org.springframework" level="INFO" additivity="false">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
</logger>
application.yml:
logging:
文件:logs/test.log模式:控制台:“%d{dd-MM-yyyy hh:mm:ss.sss}[%thread]%-5level%logger{36}.%m-%msg%n”文件:“%d{dd-MM-yyyy hh:mm:ss.sss}[%thread]%-5level%logger{36}.%m-%msg%n”级别:root:INFO
如果希望将日志文件保存30天以上,最好不要使用fixedwindowrollingpolicy
(文档),如果您只想限制保存在文件系统上的日志文件的数量,则可以使用该文档。
适合您需求的更好的附加程序是sizeandtimebasedrollingpolicy
,
基本上按日期存档[s]个文件,但同时限制每个日志文件的大小
我建议对当前文件
附加程序进行的编辑如下所示
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<encoder>
<charset>UTF-8</charset>
<pattern>${FILE_LOG_PATTERN}</pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${LOG_FILE}-%d{yyyy-MM-dd}.%i</fileNamePattern>
<maxFileSize>10MB</maxFileSize>
<maxHistory>30</maxHistory>
</rollingPolicy>
</appender>
此sizeandtimebasedrollingpolicy
使用fileNamePattern
log_file-2019-05-02.0
存储文件(LOG_FILE当然是${LOG_FILE}
变量的值)。每当该文件的大小大于10MB时,该文件就会滚动,然后将创建并写入一个新文件log_file-2019-05-02.1
。
午夜之后写入的第一个日志将创建一个新文件log_file-2019-05-03.0
,并写入该文件。超过30天的日志文件将被删除。调整配置以最适合您的需要。
我建议您阅读这个appender的文档以获得更多的细节。
问题内容: 场景是这样的: 我们正在使用JBehave和Selenium进行系统,集成和端到端测试。我正在检查超过20个值的页面上的计算结果以进行验证。使用Junit Assert,如果其中一个值不正确的第一个实例,则整个测试将失败。我想做的是,如果遇到断言失败,那么测试将继续执行,这样我就可以整理一次测试而不是多次测试中所有不正确的值。 为此,我捕获了断言并将未通过验证的所有内容写到日志文件中。
问题内容: 我需要能够使用jQuery将1、2、5或10天添加到今天的日期。 问题答案: 你可以使用JavaScript,不需要jQuery: 格式化为
我想在我的应用程序中使用SLF4J+logback用于两个目的--日志和审计。 14:41:57.978[main]信息AUDIT_LOGGER-110欢迎使用main 如何确保审核消息在审核记录器下只出现一次?
我可以创建一个命名的子记录器,以便该记录器输出的所有日志都用它的名称标记。我可以只在函数/类/任何东西中使用记录器。 但是,如果该代码调用了另一个模块中的函数,该模块仅使用日志模块函数(根记录器的代理)进行日志记录,我如何确保这些日志消息通过相同的记录器(或者至少以相同的方式记录)? 例如: main.py 其他.py 产出: 我希望能够使两个日志行都标记为名称'stuff',我希望能够做到这一点
问题内容: 我正在考虑将Redis用于Web应用程序日志记录目的。我用谷歌搜索,有人将日志转储到Redis队列/列表中,然后将计划的工作人员转储到磁盘中。 http://nosql.mypopescu.com/post/8652869828/another-redis-use-case- centralized-logging 我希望寻求理解,为什么不直接使用Redis持久化到磁盘?如果我分配了一
logging 模块自 2.3 版以来一直是 Python 标准库的一部分。在 PEP 282 中有对它的简洁描述。除了 基础日志教程 之外,这些文档是非常难以阅读的。 日志记录一般有两个目的: 诊断日志 记录与应用程序操作相关的日志。例如,当用户遇到程序报错时, 可通过搜索诊断日志以获得上下文信息。 审计日志 为商业分析而记录的日志。从审计日志中,可提取用户的交易信息, 并结合其他用户资料构成用