2

log.auto_flushingRails在 3.2 中已弃用。使用file.sync是推荐的解决方案。

我有一个由初始化程序设置的自定义记录器文件,并订阅记录到该记录器的活动支持通知。

通知由 rails 应用程序和使用 cron 运行的 rake 任务触发。

使用 时log.auto_flushing = true,一切都按预期工作,并且日志文件包含 rails 应用程序和运行时的 cron 任务的输出。

当我切换到 时file.sync = true,奇怪的事情发生了。打开日志的第一个进程可以对其进行写入,但是一旦另一个进程启动,就不会记录任何其他内容。直到被 newsyslog 轮换后才会写入日志文件,此时第一个进程能够在停止之前记录几行。

我有两个问题:

  • config/initializers设置自定义日志的正确位置是否正确?
  • 我需要做些什么来允许多个进程访问同一个文件吗?

作为参考,这是我的config/notifications.rb,具有两种配置。

4

0 回答 0