我有一个生产中的 Rails 3 应用程序,生产日志很大。我可以安全地删除它并允许 Rails 生成另一个吗?我是否必须重新启动 Rails 应用程序或重新部署?我必须触摸 production.log 吗?
这个东西有300mb大小,我想杀了它。
我有一个生产中的 Rails 3 应用程序,生产日志很大。我可以安全地删除它并允许 Rails 生成另一个吗?我是否必须重新启动 Rails 应用程序或重新部署?我必须触摸 production.log 吗?
这个东西有300mb大小,我想杀了它。
将无论何时 gem 添加到您的 gem 文件中
gem "whenever", "~> 0.7.2", require: false
并创建一个随时任务来执行此操作
例如,在您的 Rails 应用程序上运行wheneverize
commanad,它将在您的配置目录中为您创建一个 schedule.rb 文件,您可以向其中添加一个任务,例如
every 1.day, :at => '4:30 am' do
rake "log:clear"
end
如果您使用 capistrano 进行部署,请将其添加到您的 deploy.rb
set :whenever_command, "bundle exec whenever"
这将随时为您自动设置。
/home/deploy/appname/current/log/*.log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
copytruncate
}
将 logrotate 与上述配置一起使用,它运行良好。