Вопрос или проблема
Мне нужен сервис мониторинга веб-сайтов онлайн (например, https://www.uptrends.de, не самохостинговый) для веб-сайтов с большим объемом JavaScript, использующих threejs (3D-контент). Мониторинг должен информировать меня (по электронной почте), если сайт (данный URL) недоступен или если загрузка занимает слишком много времени. Поскольку большая часть сайта динамическая и зависит от 3D-контента, критерий «сайт не недоступен» равен «полностью загружен», означает, что JavaScript-часть сайта успешно выполнена. Для этого JavaScript добавляет специальный класс к тегу body сайта («app-ready»). Сайт считается «полностью загруженным» только после того, как тег body получает класс «app-ready». Поскольку сайт зависит от 3D-контента, служба мониторинга не может работать в безголовом режиме, ей потребуется настоящий браузер.
Существует ли такой сервис онлайн-мониторинга?
Я использовал StatusCake в прошлом для личных сайтов, так как у него есть бесплатный уровень, который должен выполнять обе задачи, которые вы ищете, и он довольно настраиваемый с уведомлениями по электронной почте. У него также есть тест скорости загрузки страниц, но бесплатный уровень позволяет только 1 тест в течение 24 часов, так что это может не сработать, если вы хотите использовать только бесплатный вариант.
Ответ или решение
Когда речь идет о мониторинге веб-сайтов, особенно для сложных и динамичных приложений, таких как те, что используют JavaScript и 3D-графику, важно выбрать сервис, который способен выполнять тесты с использованием реального браузера. Ваша задача состоит в том, чтобы обнаруживать не только простое недоступность сайта, но и проверять его полную загрузку, основываясь на успешном выполнении JavaScript.
Рекомендации по выбору сервиса мониторинга
-
Checkly
Checkly предоставляет мощные инструменты для мониторинга веб-приложений с тестами, которые выполняются в реальном браузере (Chromium). Он позволяет создавать тесты с использованием JavaScript и проверять наличие класса "app-ready" в теге<body>
. Также платформа поддерживает уведомления по электронной почте, что соответствует вашим требованиям. Checkly предлагает различные планы, включая бесплатный, который может быть полезен для небольших проектов. -
Pingdom
Этот сервис известен своим надежным мониторингом доступности веб-сайтов и может выполнять тестирования с использованием реального браузера. Вы можете настраивать тесты на загрузку страницы и получать уведомления, когда страница не отвечает или длительность загрузки превышает заданные пределы. У Pingdom есть возможность запуска скриптов, что позволяет проверять специфические условия, такие как наличие класса "app-ready". -
Ghost Inspector
Ghost Inspector – еще один инструмент, который предоставляет возможность записывать тесты в реальном браузере и запускать их через облачный сервис. Он поддерживает написание тестов на JavaScript и позволяет проверять наличие классов на странице. Уведомления по электронной почте также включены, что соответствует вашему запросу. Ghost Inspector часто используется для автоматизированного тестирования и имеет ряд интеграций с другими системами. -
Uptrends
Вы уже упомянули Uptrends, и действительно, этот сервис предлагает интеграцию с реальными браузерами для проверки состояния сайтов. Uptrends предоставляет детализированные отчеты о производительности, позволяет осуществлять мониторинг на основе времени загрузки и уведомляет о любых сбоях или задержках. Он работает хорошо для динамичных сайтов, особенно для тех, где сложные сценарии JavaScript играют критическую роль.
Заключение
Выбор подходящего сервиса мониторинга зависит от ваших специфических потребностей, таких как частота проверок, цена и функциональность уведомлений. Такие платформы, как Checkly, Pingdom, Ghost Inspector и Uptrends, могут удовлетворить ваши запросы и обеспечить высокие стандарты мониторинга для вашего JavaScript-ориентированного веб-приложения. Рекомендуется провести тестирование нескольких сервисов, чтобы найти тот, который наиболее подходит для вашего конкретного проекта.