Как стать автором
Обновить

New Relic — полный мониторинг вашего RoR приложения

Время на прочтение2 мин
Количество просмотров40K
Перешел тут недавно на новый VDS для своих сайтов на хостинг webbynode.com. Очень все по-рельсовому сделано. Но сейчас речь не о них.

При регистрации предложили сделать аккаунт в приложении мониторинга RoR сайтов. Называются New Relic. Посмотрел презентации, и надо признаться, очень впечатлило. Как промо акция, там дают недельный gold-account, где можно воспользоваться всеми отчетами. Это, друзья мои, стоит внимания.

Дашборд для лайт версии
New Relic RPM - Overview (color_mondays)


Apdex score



Устанавливается как типичный плагин, перезагружаете сервер и приложение начинает собирать статистику. Одно из хороших показателей Apdex — показывает степень удовлетворенности посетителей в зависимости от времени загрузки страниц.

Apdex — индустриальный стандарт и имеет предустановленные значения, к примеру, ожидание выше 4 секунд разочаровывает посетителей. Вы, кстати, можете сами отрегулировать время, по которому будет измеряться индекс в вашем конфигурационном файле.

В динамике это выглядит вот так. Легкие провалы в 11-15 и 11-45.
New Relic RPM - Apdex (color_mondays)

Самые тормозные контроллеры



Apdex дает только общую картину стабильности приложения. Поэтому надо спускаться на детали. Первое, что можно проверить — это время обработки по контроллерам.

У меня самые долгодумающие контроллеры выглядят вот так:
New Relic RPM - Apdex (color_mondays)

Есть повод покопаться и оптимизировать код, уменьшить количество запросов к базе.

По времени обработки тоже понятно. Очень много жрет импорт файла и прочие ресурсоемкие actions
New Relic RPM - Controllers (color_mondays)

Можно разрезать на кусочки все действия контроллера и проанализировать, что там вызывает наибольшие задержки. Вот для actions save_product у меня медленно работает загрузка картинки. Оно и понятно. Не пооптимизируешь особо.
New Relic RPM - Controllers (color_mondays)

Ошибки приложения



Вот это уже высший пилотаж. К сожалению, функция недоступна в бесплатной версии (как и большинство вкусностей). Сканирует ошибки приложения, группирует их. Не надо копаться в длинных логах, выяснять где именно был провал. В общем сказка. Для коммерческих приложений, по-моему, очень востребованная штука.

Кусочек из жизни приложения. Внизу можно посмотреть все ошибки и их количество
New Relic RPM - Errors (color_mondays)-1

Мощная артиллерия



Версия Gold (которую я успел потестировать) включает такие средства анализа как оценка запросов к базе и работа с ActiveRecord. New Relic сканирует все запросы к базе. Вы можете фильтровать их, сортировать по типу. Вот мои самые тугие запросы

New Relic RPM - Controller Report (color_mondays)-1

Таблица с сессиями стала очень тяжелой и сохранение и поиск там уже не торт. А сессии, что уж кривляться, одна из важных частей приложения.

Дашборды и отчеты



Общая и наиболее критичная статистика отображается на главном дашборде. Он имеет свое API и вы легко можете встраивать это в свои приложения. Сами показатели настраиваются по известному принципу светофоров (зеленый — ок, желтый — предупреждение, красный — жопа).

Вот так я настраиваю себе огоньки. Особое внимание на память, ее пока немного.
New Relic RPM - Managed Applications_ grossu-1

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

[New Relic] Weekly Performance Report for grossu - mkalachev@gmail.com - Gmail

Напоследок



На мой взгляд одна из стоящих вещей, заточенная под приложения на разных фреймворках руби. Дорого, конечно. Но для коммерческих приложений того стоит. Да и к тому же есть бесплатная лайт-версия ;)

Ссылка на основные фичи New Relic
Теги:
Хабы:
Всего голосов 19: ↑17 и ↓2+15
Комментарии25

Публикации

Истории

Работа

Программист Ruby
6 вакансий
Ruby on Rails
10 вакансий

Ближайшие события