В моей ситуации единственный способ обеспечить надежную работу журналов был следующим: (упрощенный пример)
Сначала я настроил регистратор и папку журналов следующим образом:
require 'logger'
configure do
log_dir = "#{root}/log"
Dir.mkdir(log_dir) unless Dir.exists?(log_dir)
file = File.new("#{log_dir}/#{environment}.log", 'a+')
file.sync = true
use Rack::CommonLogger, file
end
Затем в отдельной конфигурации окружения
configure :test do
set :logging, Logger::ERROR
end
configure :development do
set :logging, Logger::DEBUG
end
configure :production do
set :logging, Logger::INFO
end
Это работает удовольствие.