文件名附加日期的日志轮换
最初我认为使用 perl 的模块 Logfile:Rotate 进行日志轮转会很容易,但现在要求更改为将日期附加到日志文件的文件名中。
我需要:
- 附加(每天)旋转的文件名和日期。
- 压缩 10 天以上的日志文件。
- 删除超过 30 天的日志文件。
- 要在目录(即../logs)中旋转的日志
我尝试了Python的 logging .handlers.TimedRotatingFileHandler,但它会在 cron 执行时创建新的空日志文件。我认为这意味着一个连续的过程,而不是每个间隔的 cron 执行。
我对任何编程(脚本)语言持开放态度,以便轻松进行日志轮换。 有人有更好的想法吗?
并不是要索要代码。只是建议。
Originally I thought log rotation would be easy with the perl's module Logfile:Rotate, but now the requirement changed to appending the date to the filename of the log file.
I need to:
- Append the filename rotated (daily) with date.
- Zip the log files older than 10 days.
- Delete log files older than 30 days.
- Logs to be rotated in a directory (i.e. ../logs)
I tried Python's logging.handlers.TimedRotatingFileHandler, but it creates new empty log files on cron execution. I think it's meant for a process that's continuous and not per interval cron execution.
I'm open to any programming (scripting) language for easy log rotation.
Anyone got better ideas?
Not meant to ask for code. Just suggestions.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
目前大多数 *nix 发行版上的 logrotate 实用程序支持您的以下选项兴趣:
logrotate utility on most of *nix distros available today support following options of your interest: