Назад | Перейти на главную страницу

Как настроить BluePill для отслеживания работы приложения Rails через Passenger (mod_rails)

Недавно я запустил сайт, на котором работает пассажир phusion. К сожалению, сайт не работал из-за зависания ветки. Мне удалось спасти сервер, выполнив kill -9 для определенного PID. Тем не менее, я думал, что пассажир может управлять этим автоматически. У меня есть сервер с 1 ГБ памяти, на котором запущено одно приложение rails с выделенным пассажирам до 7 экземпляров. Однако, когда я обнаружил, что сайт вышел из строя, я обнаружил, что пассажир создал 6 экземпляров, один из которых использовал более 800 МБ памяти, что привело к замене сервера.

В результате я надеюсь установить что-то вроде bluepill на сервере, но я немного не понимаю, как вы это делаете. В основном потому, что bluepill ожидает запуска / остановки отслеживаемых процессов. Однако в нашем случае пассажир уже перезапускает процессы для нас, поэтому нам нужно только отслеживать pid-файлы экземпляров пассажира и уничтожать их, когда они становятся слишком большими.

Кто-нибудь здесь настраивал BluePill для мониторинга приложения rails, работающего под пассажиром phusion? Любое понимание было бы полезно.

Без взлома сделать это нелегко.

Хакерство будет заключаться в том, чтобы запустить сценарий оболочки, который запускает BluePill, который отслеживает процессы, которые вас интересуют, и, если что-то превышается, завершается таким образом, чтобы BluePill обнаружил сбой.

Я использую подобные вещи для мониторинга своих систем, но это задание cron, которое запускается каждые 5 минут. Это не идеально.