アプリケーションを展開するためにユニコーンを使用しています。production.log ファイルを除いて、すべてうまくいきましたが、unicorn の設計方法が原因で読み取り不能であることが判明しました。unicorn のすべてのインスタンスが同じファイルに書き込み、すべての行が一緒にスパゲッティ化されました。
ロガーに複数のユニコーン インスタンス間で個別にログを記録するように指示する方法はありますか?
アプリケーションを展開するためにユニコーンを使用しています。production.log ファイルを除いて、すべてうまくいきましたが、unicorn の設計方法が原因で読み取り不能であることが判明しました。unicorn のすべてのインスタンスが同じファイルに書き込み、すべての行が一緒にスパゲッティ化されました。
ロガーに複数のユニコーン インスタンス間で個別にログを記録するように指示する方法はありますか?
を編集し、ブロックを次のようにunicorn.conf.rb
変更します。after_fork
after_fork do |server, worker|
filepath = "#{Rails.root}/log/#{Rails.env}.#{worker.nr}.log"
Rails.logger = Logger.new(filepath, File::WRONLY | File::APPEND)
ActiveSupport::LogSubscriber.logger = Rails.logger
ActionController::Base.logger = Rails.logger
ActionMailer::Base.logger = Rails.logger
ActiveResource::Base.logger = Rails.logger
end