public
Last active

Unicorn after_fork block to have Rails write logs to a separare file for each worker.

  • Download Gist
unicorn.conf.rb
Ruby
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
after_fork do |server, worker|
log_path = Rails.root.join('log',"#{Rails.env}.#{worker.nr}.log")
 
new_logger = Logger.new(log_path)
new_logger.level = Logger::INFO
 
Rails.logger.flush
Rails.logger.close
Rails.logger = Rails.application.config.logger = ActiveSupport::TaggedLogging.new(new_logger)
 
ActiveSupport::Dependencies.logger = Rails.logger
ActiveRecord::Base.logger = Rails.logger
ActionController::Base.logger = Rails.logger
ActionMailer::Base.logger = Rails.logger
Rails.cache.logger = Rails.logger
 
ActiveRecord::Base.establish_connection
end

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.