2008-03-24

Logger::ShiftingError的解决方法

关键字: logger shiftingerror
cron job如果加载rails环境来使用Logger,这样就有多个进程操作Logger,在Logger做Shifting时会有异常,比较取巧的解决方法就是在environment.rb里加一个常量判断(sliu大人的建议):
if !$CRON_JOB_STATUS
  $LOG = Logger.new(File.join(RAILS_ROOT, '/log/rails.log'),'daily')
else
  $LOG = Logger.new(File.join(RAILS_ROOT, '/log/cronjob.log'),'daily')
end

然后在cron job里也加上一行常量定义:
$CRON_JOB_STATUS = true
require File.dirname(__FILE__)+'/config/environment'
XXX.do_xxx

这样就避免了多个进程去Shifting同一个Logger文件
评论
发表评论

您还没有登录,请登录后发表评论

hideto
搜索本博客
我的相册
A6bdc31c-c66e-468e-961e-9cc721e82adc-thumb
screenshot
共 1 张
存档
最新评论