java Spring Boot按日期 限制大小分文件记录日志

上文 java Spring Boot 将日志写入文件中记录 中 我们实现另一个将控制台日志写入到 项目本地文件的效果

但是 这里有个问题

比如 我项目是个大体量的企业项目 每天会有一百万用户访问 那我每天的日志都记载同一个文件上 那不跟没记没什么区别吗?

东西怎么找? 而且 在windows系统中 记事本大小大于了4个G以后 是直接打不开的 都不需要40G 你搞个十几个G的都能卡死

我们可以这样写 打开 配置文件 我这里用的 yml格式

我们加入代码

java 复制代码
logging:
  file:
   name: serve.log
  logback:
    rollingpolicy:
      max-file-size: 10MB
      file-name-pattern: server.%d{yyyy-MM-dd}.%i.log

这两句的意思 分别是 设置 每个文件最大 10MB 如果超过了 就换一个文件来记

然后 下面这个 告诉它 我们的日志文件的名字格式是 server. 这里的百分号d 意思是时间 格式我们设置为 年YYYY-月MM-日dd.第几个文件.log

但是 10MB也容量有点大 我们不好测试 我们直接改成 10KB吧

让他快点换下一个文件 正常来讲设10MB是比较合适的

然后 我们启动项目

显然信息还不够多 没有出文件

我这里 多调几次接口 让他多出点日志

然后我们返回来看 可以看到当内容非常大的时候 他就自动换了

文件格式 也是当前 年月日 加第几个文件

直接的说 到了服务器上 就没有这么好的控制台报错给你看了 你就全靠日志排查问题了 所以 日志体现一定要构建完整 这关系你能不能第一时间定位客户的问题

相关推荐
日月云棠42 分钟前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840822 小时前
Spring Boot 项目中日期处理的最佳实践
java·spring boot
JavaGuide2 小时前
Claude Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!!
java·spring·ai·claude code
IT探险家2 小时前
Java 基本数据类型:8 种原始类型 + 数组 + 6 个新手必踩的坑
java
花花无缺2 小时前
搞懂new 关键字(构造函数)和 .builder() 模式(建造者模式)创建对象
java
用户908324602732 小时前
Spring Boot + MyBatis-Plus 多租户实战:从数据隔离到权限控制的完整方案
java·后端
桦说编程3 小时前
实战分析 ConcurrentHashMap.computeIfAbsent 的锁冲突问题
java·后端·性能优化
大道至简Edward7 小时前
Spring Boot 2.7 + JDK 8 升级到 Spring Boot 3.x + JDK 17 完整指南
spring boot·后端
程序员清风7 小时前
用了三年AI,我总结出高效使用AI的3个习惯!
java·后端·面试
beata8 小时前
Java基础-13: Java反射机制详解:原理、使用与实战示例
java·后端