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

Инструменты для мониторинга состояния и производительности Linux, Ruby on Rails (с использованием гема Delayed Job), Nginx, Passenger, Mysql и MongoDB.

Я развертываю приложение на сервере Fedora Linux. Это приложение представляет собой веб-приложение Ruby on Rails, использующее MySQL и MongoDB в качестве баз данных. Приложение также использует гем Delayed Job для асинхронной обработки. Я использую NGinx в качестве веб-сервера. Я тоже использую Passenger.

Итак, у меня есть как минимум 5 процессов, о которых я должен беспокоиться:

К сожалению, весь этот процесс будет выполняться на одной виртуальной машине :(

Для меня очень важно отслеживать:

Мне нужен инструмент, который может предоставить мне эти данные мониторинга, создавая графику на основе времени для данных ЦП и памяти. Я также хочу иметь доступ к файлам журнала всего этого процесса через Интернет.

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

Какой инструмент, какой набор или инструменты вы, ребята, порекомендуете?

С Уважением,

Рубем

Nagios это стандартная рекомендация для системного мониторинга не зря. Это открытый исходный код и бесплатный. Мы тоже используйте его.

Это общедоступное веб-приложение? Если да, предлагаю добавить Сторонний мониторинг. Мы используем AlertFox Pro (платно) за это, но у них также есть бесплатный пакет. В бесплатный мониторинг план немного скрыт, но довольно мощный;)

Если ваш веб-сайт общедоступен, я рекомендую вам отличный New Relic RPM для мониторинга Rails:

http://www.newrelic.com/

Nagios сообщит вам о статусе вашего процесса.

Cacti построит график того, что вы хотите отслеживать в своих процессах.

Плагины Nagios - отличное решение для вашего пула баз данных. Для большинства баз данных есть надежные плагины. Плагины также являются хорошим решением для мониторинга вашей системы по URL-адресу с искусственными транзакциями.

Чтобы получить подробные сведения о процессе, которые вы описываете, вам придется использовать несколько разрозненных систем. Вы, вероятно, преуспеете, если посмотрите на решение, которое полностью не зависит от языка или типа компонента приложения. Это сложно сделать правильно, но попробуйте AppFirst. Они хорошо все видят. Вы также можете поместить все данные вашего плагина Nagios в их поток данных.

Если вам нужны детали уровня кода для ваших процессов Ruby, вы должны проверить New Relic. Имейте в виду, что это для разработчиков. Отличное решение. Но это зависит от того, что вы ищете.