Как создавать устройства и целевые объекты

WebSocket – это протокол связи, который работает по TCP и предназначен для обмена сообщениями между браузером и веб-сервером в режиме реального времени. Браузер (клиент) и сервер используют протокол, аналогичный HTTP, для создания webSocket соединения.

Для получения дополнительной информации о протоколе WebSocket и мониторинге приложений на основе WebSocket, пожалуйста, посетите блог Dotcom-Monitor.

Устройство WebSocket, созданное на платформе Dotcom-Monitor, проверяет единый URL-адрес WebSocket на наличие, производительность, надлежащее содержание и ошибки. Устройство мониторинга также может быть настроено для проверки сертификатов безопасности и содержимого ответов.

Настройка запроса

Url

Чтобы открыть соединение WebSocket, необходимо ввести URL-адрес WebSocket конечной точки или IP-адрес URL WebSocket, который вы хотите проверить (поддерживается ws:// и зашифрованные протоколы wss://). Например, wss://echo.websocket.org/

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

Вы можете преобразовать URL в динамическое значение или параметр контекста здесь. Например, можно динамически изменить целевой URL во время мониторинга.

Отправка данных

Как только соединение было открыто, Dotcom-Monitor слушает события в розетке. Если вам необходимо передать данные в целевую конечную точку, в поле Отправка данных, укажите сообщение в строке или двоичном формате. Dotcom-Monitor отправит сообщение в конечную точку цели с помощью протокола WebSocket и будет ждать ответа.

Dotcom-Monitor поддерживает выражения Razor в сообщениях WebSocket. Чтобы отправить строку, которая содержит выражение Razor, введите его в поле отправки данных и используйте сценарий подготовки, чтобы настроить тип сообщения на выражение Razor. В противном случае сообщение будет проанализировано и отправлено в виде текста. Используйте следующий фрагмент в поле Подготовка сценария, чтобы уведомить систему о том, что она должна проанализировать сообщение с помощью модуля Razor:

ProcessPostDataByRazor(currentTask);

В дополнение к двигателю Razor, Dotcom-Monitor позволяет динамически изменять данные тела запроса с помощью масок данных. Чтобы узнать, как использовать синтаксис Razor и маски данных в отправленных данных, и настроить динамически меняющейся полезной нагрузки, см. Как динамически изменить полезную нагрузку в http Request.

Проверка ответа (Проверка содержимого)

Для проверки строки сообщений, полученной из WebSocket, можно утвердить ключевые слова в сценарии выполнения вызова. Система будет ждать ответа от целевой конечной точки и проверять полученное сообщение на наличие указанного ключевого слова в строке до тех пор, пока не будет достигнуто время ожидания завершения задачи мониторинга. Если ключевое слово не было обнаружено в ответах из гнезда, ошибка будет сгенерирована.

В полях Ключевое слово можно указать одно слово или фразу, которую требуется найти в ответном сообщении. Используйте обычный текст, чтобы указать ключевое слово:

Обратите внимание, что ключевое слово является чувствительным к делу.

Подготовка сценария и почтового сценария

Поля могут содержать код СЗ, который может использоваться для конкретных запросов и данных URL или для проверки или публикации пользовательских заголовников. Для получения более подробной информации об использовании обратитесь в техническую поддержку в статье Using Prepare Script and Post Script.

Динамический сценарий выполнения вызова WebSocket можно указано в поле «Подготовьй сценарий». Динамический сценарий может включать в себя ряд операций с двоичными или струнными данными.

Бинарные отформатированные операции (msg как Base64 закодированы):

  • ValidateBinary(string msg) – проверяет, равен ли ответ WebSocket указанным двоичным данным.
  • ValidateBinaryContains (string msg) – проверяет, содержит ли ответ WebSocket указанные двоичные данные.
  • SendBinary (строка msg) – отправляет двоичное сообщение на WebSocket.

Текстовые отформатированные операции:

  • SendText (строка msg) – отправляет текстовую строку на WebSocket.
  • ValidateText(string msg) – проверяет, равен ли ответ от WebSocket указанной строке.
  • ValidateTextContains(string msg) — проверяет, содержит ли ответ WebSocket указанную строку.

Задержка:

  • Delay(string duration) – устанавливает задержку между сообщениями websocket в секундах в следующем формате: XXs. Система будет ждать указанное время, прежде чем выполнить следующую операцию в скрипте. Обратите внимание, что слишком длительные задержки могут привести к завершению скрипта из-за тайм-аута завершения задачи.

В тех случаях, когда какое-либо утверждение было указано в поле Prepare Script, система будет ждать указанного утверждения в ответе и приступить к исполнению сценария после успешной проверки. Если сообщение с указанным утверждением не получено, и достигнуто время ожидания завершения задачи, мы создадим ошибку проверки.

Dotcom-Monitor позволяет включить в сценарий Prepare столько операций, сколько необходимо. Однако, если истечет время ожидания выполнения задачи, выполнение скрипта будет прекращено. Время выполнения задачи отсчитывается от начала выполнения скрипта.

  • Пример: проверка ответа OK

  • Пример: сбой проверки ответа

  • Пример: задержка 10 секунд

Обратите внимание, что поля проверки данных и содержимого игнорируются, если поле Prepare Script содержит соответствующие шаги в динамическом сценарии. Например, если следующие шаги включены в скрипт, поле проверки данных и содержимого будет проигнорировано:

currentTask.SendText("This is a test");
currentTask.ValidateText("This is a test");

В тех случаях, когда текущий параметрTask не зависит от имени задачи и имеет тип задачи, которая в настоящее время обрабатывается.

Проверка SSL/сертификата

Безопасный слой розетки SSL Сертификат Мониторинг является стандартным аспектом веб-мониторинга.

Доступны следующие опции:

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

Порог проверки времени (в секундах)

Введите количество секунд, в течение которых задача должна ожидать ответа, прежде чем завершить задачу и вернуть ошибку. Максимальное время ожидания составляет 60 секунд. Если оставить это поле пустым, будет применено время ожидания по умолчанию, равное 60 секундам. Время выполнения задачи отсчитывается от начала выполнения скрипта.

Базовая аутентификация

The Basic Authentication scheme is used to allow users to access content on some websites. Once provided, login credentials will be passed along with the request header to the web server.

  • Username: contains a username for HTTP/S basic or digest access authentication.
  • User Password: contains a password for HTTP/S basic or digest access authentication.

Do not confuse Basic Authentication with other authentication schemes such as Bearer Authentication that involves bearer tokens and OAuth 2.0 that uses access tokens.

Read the articles on Basic Authentication Username and Password and Monitoring OAuth 2.0-based APIs for more information.

Заголовки

Опция позволяет добавлять любые дополнительные пользовательские заготовки, если это необходимо.

  • Название заголовка: укажите имя параметра, как оно появится в запросе.
  • Значение: введите значение, связанное с именем параметра.

Параметры DNS

Функция DNS Options позволяет пользователям выбирать, как запросы сервера доменных имен (DNS) проводятся во время выполнения задачи мониторинга.

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

Раздел Custom DNS Hosts позволяет настроить сопоставление IP-адресов с именами хостов. Поддерживается разрешение DNS IPv6 и IPv4.

Чтобы указать сопоставление, введите IP-адрес и имя хоста в соответствующие поля.

Примеры:

192.168.107.246 example.com user.example.com userauth.example.com tools.example.com
192.168.107.246 example.com
192.168.107.246 user.example.com
192.168.107.246 userauth.example.com

Смотрите также: Параметры режима DNS.