2012-05-26 2 views
2

우리는 응용 프로그램을 배포하기 위해 유니콘을 사용 해왔다. production.log 파일을 제외하고는 모든 것이 잘되었지만 유니콘을 설계 한 방식 때문에 읽을 수 없게되었습니다. 유니콘 (Unicorn)의 모든 사례는 같은 파일에 썼고, 모든 라인을 함께 스파게티로 만들었습니다.레일 + 유니콘 로거 쓰레드를 안전하게 만드는 법?

로거가 여러 유니콘 인스턴스에 걸쳐 독립적으로 기록되도록하는 방법이 있습니까?

답변

2
편집하여 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