Workerの方でLogger.infoなどとログを出力してると,どうもファイルが開きっぱなしになるようだ.なもんで,Workerでファイルの読み書きなどしていると,[Too many open files]なるエラーが出てしまう.
対処としては,
logger = Logger.new(RAILS_ROOT + "/log/hoge.log")
logger.info "foobar"
logger.close
として1回ずつcloseすることにした.これで,
# ls /proc/{PID}/fd/
としてもそれほど開いているファイルが増えなくなった.
comments powered by Disqus