我可以让Rails 3保存生产日志90天吗?

时间:2012-09-13 21:24:14

标签: logging ruby-on-rails-3.2 production-environment log-rotation

Rails 3似乎会在一段未知时间后自动截断生产日志。我希望能够保存最近90天的生产日志,以便能够审核我的应用程序的行为。根据{{​​3}},旧的Rails Logger至少支持将日志分成不同的日期,如果不是自动删除旧日志,但Rails现在使用不支持这些选项的BufferedLogger

无论哪种方式,看起来我可能不得不求助于配置Unix的logrotate来获取我想要的日志保留策略。这对我来说很好,但我还必须防止Rails自动截断日志,这样我就不会丢失任何东西,而且我不知道该怎么做。

是否有可供Rails(可能是宝石)使用的替代日志工具,可以在一个地方处理这一切?如果没有,我如何阻止BufferedLogger截断日志,使其无法以logrotate的方式进入?

1 个答案:

答案 0 :(得分:0)

AFAIK,根本没有截断。 BufferedLogger源不显示日志文件的任何限制。

http://engineering.freeagent.com/2011/10/12/understanding-the-rails-logger/是一些内部人员的良好指南。但看起来你需要自己进行轮换。