Бесплатно контролируйте время работы вашего сайта с помощью Apify и Integromat

Опубликовано: 2019-06-08

Существует довольно много сервисов мониторинга безотказной работы, к сожалению, для большинства из них требуется ежемесячная подписка. Несколько бесплатных, которые на самом деле кажутся надежными, не дают большого контроля над тем, как проверяется ваш сайт. Раньше моим любимым сервисом мониторинга был Pingdom, но недавно они прекратили свой бесплатный план, что заставило меня искать что-то новое. После некоторых экспериментов я смог настроить Apify и Integromat так, как мне нужно для мониторинга.

Сначала небольшое введение в оба сервиса:

апифай

Apify — это «веб-платформа для парсинга и автоматизации». По сути, он позволяет вам сканировать любой веб-сайт и преобразовывать доступную информацию в простой для использования API. Например, у Google нет официального API для получения результатов поиска, поэтому единственный вариант — извлечь HTML-код из поисковой выдачи Google и извлечь необходимые данные. Apify может легко автоматизировать этот процесс для вас. В нашем случае мы настроим его для сканирования нашего собственного веб-сайта, чтобы узнать, находится ли он в сети.

Интегромат

Этот сервис представляет собой онлайн-платформу автоматизации. Он позволяет вам определять действия, которые выполняются с определенными триггерами. Например, вы можете определить сценарий, в котором новая задача создается в приложении списка дел, как только кто-то отправляет форму Google. Другими словами, он объединяет сервисы, которые не взаимодействуют друг с другом напрямую.

В нашем сценарии мы будем использовать Integromat для отправки уведомлений, когда Apify заметит проблему.

Обзор процесса

Вот краткий обзор того, как это будет работать:

  • Apify будет регулярно сканировать страницу вашего веб-сайта и искать ключевое слово.
  • Модуль в Integromat будет получать результаты в конце каждого обхода.
  • Фильтр проверит данные обхода, чтобы увидеть, не находится ли веб-сайт в автономном режиме или не найдено ли необходимое ключевое слово.
  • Если веб-сайт не в сети, фильтр запустит второй модуль Integromat и отправит вам уведомление.

Давайте начнем!

Настройка

  • Зарегистрируйте бесплатную учетную запись Apify или войдите, если она у вас уже есть.
  • Перейдите в раздел сканеров в своей учетной записи и создайте новый сканер.
Создать новый сканер Apify
Создать новый сканер Apify
  • На вкладке основных настроек добавьте имя для вашего сканера
  • Введите URL-адрес, который вы хотите проверить, в поле «Начальные URL-адреса».
  • Удалите все из поля «Интерактивные элементы», потому что мы не хотим, чтобы сканер перемещался по сайту. Мы просто хотим проверить одну страницу.
Базовые настройки сканера Apify
Базовые настройки сканера Apify
  • В области «Функция страницы» добавьте следующий код. Он проверит тело страницы на наличие ключевого слова «ВАШЕ КЛЮЧЕВОЕ СЛОВО ЗДЕСЬ». Убедитесь, что вы заменили это своим ключевым словом.
 function pageFunction(context) { // called on every page the crawler visits, use it to extract data from it var $ = context.jQuery; var result = { title: $('title').text(), online: $('body').text().indexOf('YOUR KEYWORD HERE') !== -1 ? '1' : '0' }; return result; }
  • Перейдите на вкладку дополнительных настроек
  • Установите «Максимум страниц за сканирование» на единицу, потому что мы хотим проверить только одну страницу.
  • Сохраните настройки сканера
  • Перейдите на вкладку «Выполнить консоль».
  • Нажмите кнопку «Выполнить» и убедитесь, что под результатами отображаются правильные значения.
Результаты сканирования Apify
Результаты сканирования Apify
  • Выберите «Расписания» на боковой панели и нажмите «Создать новый».
  • В поле «Выражение Cron» на вкладке «Настройки» введите @hourly и сохраните настройки.
  • Перейдите на вкладку «Сканеры», добавьте свой сканер и сохраните. Теперь ваш новый сканер будет запускаться каждый час.

Настройка Интегромата

  • Зарегистрируйте бесплатную учетную запись Integromat или войдите, если она у вас уже есть.
  • Нажмите кнопку «Создать новый сценарий» в правом верхнем углу экрана.
Крит новый сценарий
  • Вас спросят: «Какие сервисы вы хотите интегрировать?». Выберите Apify и нажмите «Продолжить».
Выберите сервис Apify
Выберите сервис Apify
  • Щелкните знак вопроса в центре экрана и выберите Apify.
Добавить модуль Apify
Добавить модуль Apify
  • Выберите «Смотреть выполнение Crawler» в разделе «Триггеры».
Наблюдайте за выполнением краулеров
Наблюдайте за выполнением краулеров
  • При запросе вебхука нажмите кнопку «Добавить».
Добавить новый вебхук
Добавить новый вебхук
  • Во всплывающем окне «Добавить крючок» нажмите кнопку «Добавить» в разделе «Подключение».
Добавить новое подключение
  • Во всплывающем окне «Создать соединение» добавьте свои учетные данные Apify и нажмите «Продолжить». Вы можете получить «Идентификатор пользователя» и «Токен API» в разделе « Account > Integrations » в своей учетной записи Apify.
  • После добавления соединения выберите сканер Apify, созданный на предыдущем шаге, в раскрывающемся списке «Искатель».
Выберите сканер Apify
  • Нажмите «Сохранить» во всплывающем окне «Добавить крючок».
  • Нажмите «ОК» в главном всплывающем окне Apify.
Сохранить вебхук
  • Новый вебхук готов. Вау!

Теперь вы успешно создали прослушиватель для ваших обходов Apify. Теперь вам нужно добавить действие для завершения сканирования. Для этого вам нужно добавить еще один модуль. Здесь у вас есть возможность добавить любой модуль, который вам нравится. Вы можете добавить модуль Gmail для отправки уведомлений в свой почтовый ящик. Я пропущу инструкции для этой части, так как инструкции на экране говорят сами за себя. Лично я выбрал Slack в качестве второго модуля, потому что мне было неудобно давать доступ третьей стороне к моей электронной почте.

После добавления второго модуля щелкните три точки, соединяющие два модуля, и добавьте следующие значения:

Это означает, что вы хотите, чтобы второй модуль запускался только в том случае, если данные сканирования, отправленные Apify, не имеют атрибута «онлайн» (для ошибок времени ожидания сервера и т. д.) или атрибут «онлайн» доступен, но его значение равно 0. (страница загрузилась нормально, но ключевое слово не найдено).

Тестирование

Откройте настройки сканера Apify и сохраните недоступный URL-адрес в качестве значения поля «Начальные URL-адреса». Теперь, когда вы запускаете новое сканирование, оно предсказуемо завершится ошибкой, сработает второй модуль в Integromat, и вы получите новое уведомление!

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