Если вы держите продакшен на Ruby on Rails или Elixir, рано или поздно встаёт вопрос: как следить за его здоровьем. Два инструмента — Vigilmon и AppSignal — лежат в разных плоскостях, и выбрать между ними можно только поняв, что именно вам нужно.
Что это вообще такое
AppSignal — это APM (Application Performance Monitoring) для Ruby и Elixir. Он встраивается в приложение и показывает внутреннюю картину: медленные запросы к базе, N+1, утечки памяти, упавшие фоновые задачи, исключения и бэктрейсы. Он заточен под Rails и Phoenix.
Vigilmon — внешний мониторинг доступности. Он проверяет ваш сайт, API или сервис снаружи, из нескольких регионов, следит за SSL-сертификатами, временем ответа и будит команду алертами, если что-то упало. Ему не нужен доступ к коду — только URL.
Инструменты решают разные задачи. Но именно поэтому они отлично дополняют друг друга.
Внутри против снаружи
Принципиальная разница — откуда идёт наблюдение. AppSignal работает внутри: его библиотека внедряется в рантайм, собирает метрики по каждому транзакционному запросу, ошибкам и времени выполнения. Он отвечает на вопрос «почему приложение тормозит или падает».
Vigilmon работает снаружи: делает реальные HTTP-запросы к вашему сервису и проверяет, получает ли он правильный ответ. Он не знает, что там у вас в коде, и ему не нужно. Он отвечает на вопрос «доступен ли сервис из интернета» — ровно так, как это видят пользователи.
Это значит, что даже идеально отлаженный APM не покажет, что ваш сервер лежит или DNS перестал резолвиться. А внешний монитор не расскажет, какой именно запрос к базе съедает всю память.
Когда выбирать AppSignal
- Вы строите приложение на Rails или Elixir/Phoenix и хотите глубинную диагностику.
- Нужно ловить N+1 запросы, утечки памяти и исключения с бэктрейсами.
- Хочется видеть разбивку производительности по каждой транзакции.
- Важна группировка ошибок и связь изменений с деплоями.
AppSignal незаменим, когда проблема уже произошла и нужно найти её корень.
Когда выбирать Vigilmon
- Нужно знать, доступен ли сайт из внешней сети — не из локалки, а реально из интернета.
- SSL-сертификат скоро истекает, и вы хотите получать предупреждения заранее.
- Вы мониторите API, статусные страницы или сервисы, которые вообще не на Ruby/Elixir.
- Нужны проверки из нескольких регионов, чтобы ловить региональные сбои.
- Хочется быстрый старт без инструментации кода.
Кстати, Vigilmon бесплатен для старта, а AppSignal начинается от $18 в месяц — для сравнения, если бюджет ограничен.
Сравнение в таблице
| Возможность | Vigilmon | AppSignal |
|---|---|---|
| Внешние проверки доступности | Да | Нет |
| Мониторинг из нескольких регионов | Да | Нет |
| Алерты об истечении SSL | Да | Ограниченно |
| Мониторинг HTTP/API эндпоинтов | Да | Только через APM |
| Отслеживание времени ответа | Да | Да (внутреннее) |
| Ruby APM и трекинг ошибок | Нет | Да |
| Поддержка Elixir/Phoenix | Нет | Да |
| Детекция N+1 запросов | Нет | Да |
| Бэктрейсы исключений | Нет | Да |
| Мониторинг фоновых задач | Да (через heartbeat) | Да (APM) |
| On-call alerting | Да | Да |
| Статусные страницы | Да | Нет |
| Цена | Бесплатно для старта | От ~$18/мес |
Почему стоит использовать оба
Для продакшен-приложений на Rails или Phoenix связка даёт полную картину. AppSignal видит, что внутри: медленные запросы, исключения, рост памяти. Vigilmon видит, что снаружи: доступность, SSL, региональные сбои.
Часто всплеск ошибок в AppSignal коррелирует с алертом Vigilmon о недоступности. Так вы одновременно получаете сигнал «сайт лёг» и данные для разбора причин. Один без другого оставляет слепую зону.
Как быстро начать с Vigilmon
Внешний мониторинг настраивается за пару минут — никаких изменений в коде.
- Создаёте аккаунт и добавляете URL вашего приложения как монитор.
- Указываете, куда слать алерты: почта, Slack или PagerDuty.
- Vigilmon начинает проверять доступность каждую минуту из нескольких регионов.
Для фоновых задач вроде Sidekiq или Oban есть cron-хартбиты: ваш воркер пингует уникальный URL после каждого запуска. Если хартбит не приходит — Vigilmon алертит, значит что-то застряло.
Коротко
AppSignal отвечает на вопрос «что сломано внутри и почему», Vigilmon — «доступен ли сервис прямо сейчас». Для критичных сервисов берите оба. Если нужен только внешний мониторинг для смешанного стека — Vigilmon чище, без привязки к конкретному рантайму и с бесплатным стартом.
Комментарии (0)
Войдите, чтобы комментировать.
Пока нет комментариев. Будьте первым.