2010-02-05 4 views
2

내 레일 앱이 이니셜 라이저에서 rufus-scheduler로 프로세스를 시작합니다. 여기에 초기화의 코드 제거 다운 버전입니다 :Rufus 스케줄러가 프로덕션에 로그인하지 않습니다.

# config.logger isn't available here, so we have to grab it from the Rails object 
logger = RAILS_DEFAULT_LOGGER 

logger.warn(Time.now.to_s + ": Starting Rufus Scheduler") 

# run every Wednesday at 10 AM 
cron_string = '0 10 * * 3' 

scheduler = Rufus::Scheduler.start_new 
scheduler.cron cron_string do 
    logger.warn(Time.now.to_s + ": Starting Background Process") 
    (do work here) 
    logger.warn(Time.now.to_s + ": Finished Background Process") 
end 

logger.warn(Time.now.to_s + ": Rufus Scheduler set Background Process to run with the following cron string: [#{cron_string}]") 

모든 환경에서이 코드는 챔피언처럼 실행됩니다. 채우기 프로세스는 그 일을 정상적으로 완료합니다. 그러나 문제는 로깅입니다. RAILS_ENV가 "production"으로 설정되면 cron 블록 내의 메시지는 전혀 로그하지 않습니다.

저는 Passenger 2.2.9와 Rails 2.3.5를 사용하고 있습니다. 이 두 가지 중 하나가 로깅에서 프로세스를 방해하고 있다고 생각합니다. 누구나 그것이 어떤 제품인지, 그리고 어떻게 생산에 로그인 할 수 있는지 말해 줄 수 있습니까?

답변