这是可以做到的,无需重新启动nginx的日志轮播(只发送USR1信号nginx的它会做的工作)。我不知道它是可能对我的Rails应用程序(nginx的乘客)。这是不值得重新启动我的Rails应用只是做一个logrotate的。

有帮助吗?

解决方案

如果你正在谈论的Rails应用程序日志旋转,你可以通过将做到这一点。

 config.logger = Logger.new(config.log_path, 10, 1024**2)

在您的环境文件。第二个参数是你想保持.log文件,以及第三是字节大小的文件被允许到达他们将旋转前的数量。此配置意味着1兆字节的10个文件。也许并不像配置为logrotate的可能(压缩等不支持),但它可以让你保持你的应用程序中的所有日志文件。这通常为我工作。

此外发现这个如果想要坚持登录旋转经由nginx的。

其他提示

logrotate的配置是非常简单的,以得到这个向下

/path/to/rails_apps/*/shared/log/*.log {
  daily
  missingok
  rotate 30
  compress
  delaycompress
  copytruncate
}

copytruncate基本上复制内容到新的文件和截短旧文件。这消除了需要重新启动。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top