我有一个在 Linux(Debian、Ubuntu 和 RHEL)上使用 log4j 的 Spring 项目。现在我想为 log4j 生成的日志实现最佳实践日志轮换。
我以前曾将 logrotate.d 用于其他非 java 组件,它对我来说效果很好。我需要按大小/时间旋转并压缩旧日志,而 logrotate 可以完成所有这些。
我是 log4j 的新手,现在想知道我应该如何配置日志轮换。
- 我是否应该只使用 log4j 进行日志记录,而使用 logrotate 进行轮换?
- 仅使用 log4j 进行轮换?
- 混合使用两者?
你的经验是什么?最佳做法是什么?
最佳答案
一般来说,我通常使用 log4j 进行日志记录和初始轮换,而我使用 logrotate 进行压缩和归档。原因是我尝试保留日志记录规则,包括要记录的文件、大小、命名约定等与应用程序相关联。 然后我尝试将 sysadmin 类型配置,比如保留多少,何时压缩,何时移动到 logrotate 中的备份目录。
关于java - 使用 log4j 或 logrotate.d 轮转 Linux-Java 日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5546377/