欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 资讯 > Spring Boot 日志按天写入配置指南

Spring Boot 日志按天写入配置指南

2024/11/6 4:26:46 来源:https://blog.csdn.net/exlink2012/article/details/141550588  浏览:    关键词:Spring Boot 日志按天写入配置指南

要将 Spring Boot 的输出信息按天写入日志文件,你可以使用 Logback 作为日志框架,结合 TimeBasedRollingPolicy 来实现按天滚动日志文件。

配置步骤

1. 引入 Logback 依赖

Spring Boot 默认已经包含了 Logback 的依赖,所以通常不需要额外引入。如果你使用了其他日志框架,可以在 pom.xml 中引入 Logback 依赖:

<dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId>
</dependency>

2. 配置 logback-spring.xml

在 Spring Boot 项目的 resources 目录下创建或修改 logback-spring.xml 文件,添加按天滚动的配置:

<configuration><property name="LOG_PATH" value="logs" /><property name="LOG_FILE_NAME" value="application" /><!-- 控制台输出 --><appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern></encoder></appender><!-- 文件输出,按天生成 --><appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"><!-- 注意这里移除了 <file> 元素 --><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 日志文件按天滚动 --><fileNamePattern>${LOG_PATH}/${LOG_FILE_NAME}-%d{yyyy-MM-dd}.log</fileNamePattern><!-- 保留30天的日志文件 --><maxHistory>30</maxHistory></rollingPolicy><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern></encoder></appender><!-- 指定日志级别和输出目标 --><root level="INFO"><appender-ref ref="CONSOLE" /><appender-ref ref="FILE" /></root>
</configuration>

3. 配置解释

  • <file>:指定日志文件的路径和名称,例如 logs/app.log
  • <rollingPolicy>:配置日志滚动策略,这里使用 TimeBasedRollingPolicy,按日期生成日志文件。
  • <fileNamePattern>:指定滚动后的日志文件命名模式,如 logs/app.%d{yyyy-MM-dd}.log,将按日期生成不同的日志文件。
  • <maxHistory>:指定保留历史日志文件的天数,超过这个天数的日志文件将被删除。

4. 启动项目

配置好之后,启动 Spring Boot 项目,日志将按天生成不同的日志文件。例如,2024-08-26 日的日志文件将命名为 app.2024-08-26.log

这套配置可以帮助你将 Spring Boot 的日志按天保存到不同的文件中,并且根据需要设置保留历史日志的时间长度。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com