Регистрация Rails 3.2.1 в Passenger, Thin или Unicorn

Я пробовал эти 3 подхода к хостингу для своего приложения Rails, и что бы я ни делал, я не могу получить последовательное ведение журнала при запуске в производственной среде.

Для своих тестов я создал пустое приложение и попытался получить доступ к корневому каталогу. Затем я бы добавил эшафот пользователей и разгребал базу данных.

Если я переведу RAILS_ENV в режим разработки, log/devlopment.log будет работать нормально, записывая все, что я ожидал.

Когда я запускаю RAILS_ENV в рабочую среду, log/production.log регистрируется странным образом. В Passenger я получаю первую ошибку маршрутизации. Тогда ничего. Когда я перезапускал apache или nginx, я получал все ошибки маршрутизации, которые я вызвал с момента первой (зарегистрированной), затем журнал не мог записать ничего нового, пока я не перезапустил базовый сервер. apache2/error.log будет зарегистрирован, если у меня возникнут проблемы с конфигурацией. Тогда он только регистрирует промахи кеша

С Thin и Unicorn я получаю ошибки только о статических ресурсах (я не компилировал их заранее). После того, как я предварительно скомпилировал активы, сообщения в журнале больше не появлялись.

Во всех трех настройках я получал сообщения о предварительной компиляции (когда запускал assets:precompile) в файле production.log (указывая, что Rails может по крайней мере записывать в журнал).

У кого-нибудь есть приложение Rails 3.2.1, работающее на одном из гемов развертывания (Passenger, Thin или Unicorn), которое правильно регистрируется в производственном режиме? Я потратил на это 5 дней. У меня нет идей.


person Tyler DeWitt    schedule 18.02.2012    source источник


Ответы (1)


Оказывается, это зарегистрированная проблема в Rails 3.2.x. Исправление отправлено и, надеюсь, будет выпущено вместе с Rails 3.2.2.

https://github.com/rails/rails/issues/4277

person Tyler DeWitt    schedule 20.02.2012