CnOps 社区
首页开源项目实践文章视频课程常见问答开发者工具
导航菜单
首页开源项目实践文章视频课程常见问答开发者工具

CnOps 社区

愿景

CnOps 社区是一个以"智能运维与可观测"为核心的开放、包容、分享的技术社区,旨在聚集运维专家、开发者和爱好者,共同探讨、学习和分享可观测最佳实践与最新技术,与众多技术社区合作互动,共同探讨交叉领域的技术挑战,推动可观测领域的创新与进步。

内容社区

  • 实践文章
  • 视频课程
  • 开源项目
  • 常见问答
  • 开发者工具

友情链接

  • Prometheus
  • Grafana Lab
  • OpenTelemetry
  • LoongCollector

关注我们

阿里云云原生公众号阿里云云原生
阿里云可观测公众号阿里云可观测

Copyright © 2026 CnOps 社区. All rights reserved.

首页问答日志轮转的 rename 和 copytruncate 两种方式有什么区别?

日志轮转的 rename 和 copytruncate 两种方式有什么区别?

#日志轮转#rename#copytruncate#logrotate#运维

可观测中文社区 | 2025-03-18

Rename 和 Copytruncate 是两种主流的日志轮转方式,各有优缺点:

Rename 方式:

  • 原理:将当前日志文件重命名为备份文件名,然后让应用创建新的日志文件
  • 优点:原始文件重命名后不再被写入,数据完整性好,不会丢失日志
  • 缺点:重命名和创建新文件之间可能有短暂的日志写入中断

Copytruncate 方式:

  • 原理:先复制当前日志文件内容到新文件,然后截断(清空)原始文件
  • 优点:文件描述符不变,应用无感知,不会出现写入中断
  • 缺点:复制和截断之间可能丢失少量日志或重复写入;大文件复制会产生较高的磁盘 I/O 开销

开发者可以根据业务对日志完整性和连续性的要求,结合文件大小、时间、数量等规则选择合适的轮转策略。