2 Сценарий из реальной жизни
Обзор
В этом разделе представлен пошаговый пример из реальной жизни, показывающий, как можно использовать веб-мониторинг.
Веб-мониторинг Zabbix будет использоваться для мониторинга веб-интерфейса Zabbix. Цель состоит в том, чтобы определить, доступен ли он, предоставляет ли правильное содержимое и насколько быстро он работает. Для этого требуется выполнить несколько шагов, включая проверку доступности первой страницы, вход с именем пользователя и паролем, проверку успешности входа, выход из системы и подтверждение выхода.
Сценарий
Добавление нового веб-сценария
Перейдите в Сбор данных → Узлы сети, выберите узел сети и нажмите Веб в строке этого узла сети.
Затем нажмите Создать веб-сценарий.

В форме нового сценария заполните следующие поля:
- Имя - Проверка веб-интерфейса
- Интервал обновления - 1m
- Попытки - 1
- Агент - Zabbix
В разделе Переменные добавьте две переменные: {password} и {user}.
Введите в качестве значений существующие учетные данные пользователя Zabbix.
В целях безопасности рекомендуется создать отдельного пользователя с минимальными правами доступа для использования в целях мониторинга.
При необходимости перейдите на вкладку Теги и добавьте теги веб-сценария.
После полной настройки этот веб-сценарий автоматически добавит на узел сети элемент данных Zabbix trapper.
Вы можете использовать теги веб-сценария, чтобы быстро находить связанные элементы данных и триггеры или выполнять поиск по собранным данным.
Например, подходящими тегами для этого руководства будут component: web-scenario и/или target: frontend.
Настройка шагов веб-сценария
Перейдите на вкладку Steps и задайте шаги для сценария. Нажмите кнопку Add, чтобы добавить отдельный шаг.
Общие поля
Для каждого шага, описанного ниже, заполните следующие поля в дополнение к полям, специфичным для шага:
- URL — URL веб-интерфейса Zabbix
- Timeout — 15s
- Required status codes — 200
Шаг 1 веб-сценария
Проверьте, что первая страница отвечает корректно, возвращает HTTP-код ответа 200 и содержит текст "Zabbix SIA".
- В поле Name введите First page.
- В поле Required string введите Zabbix SIA.
- Заполните общие поля.
Когда настройка шага будет завершена, нажмите кнопку Add.

Шаг 2 веб-сценария
Войдите в веб-интерфейс Zabbix, используя макросы (переменные), определённые на уровне сценария — {user} и {password}.
- В поле Имя введите Login.
- В разделе Поля POST добавьте три POST-поля:
- name со значением {user}
- password со значением {password}
- enter со значением Sign in
- В разделе Переменные добавьте новую переменную {csrf_token} со значением regex:([0-9a-z]{64}). Эта переменная перехватит значение назначенного CSRF-токена для повторного использования в шаге 4.
- Заполните общие поля.

Обратите внимание, что веб-интерфейс Zabbix при входе в систему использует перенаправление JavaScript, поэтому вход должен выполняться первым, а функции, доступные после входа, можно проверять только на следующих шагах. Кроме того, на шаге входа необходимо использовать полный URL к файлу index.php.
Шаг 3 веб-сценария
После входа в систему проверьте успешность входа, проверив наличие строки, видимой только после входа в систему, например Administration.
- В поле Name введите Login check.
- В поле Required string введите Administration.
- Заполните общие поля.

Шаг 4 веб-сценария
После того как доступность веб-интерфейса и вход в систему проверены, добавьте шаг выхода из системы — в противном случае база данных Zabbix будет засоряться множеством записей об открытых сессиях.
- В поле Name введите Logout.
- В разделе Post fields добавьте два post-поля:
- reconnect со значением 1
- _csrf_token со значением {csrf_token}.
- Заполните общие поля.
На этом шаге используется переменная {csrf_token}, полученная на шаге 2

Шаг 5 веб-сценария
Чтобы подтвердить выход из системы, проверьте наличие строки Username.
- В поле Name введите Logout check.
- В поле Required string введите Username.
- Заполните общие поля.

Полная настройка шагов
Полная настройка шагов веб-сценария должна выглядеть следующим образом:

Проверьте результаты
Сохраните готовый сценарий веб-мониторинга.
Сценарий будет добавлен к узлу сети. Чтобы просмотреть информацию о веб-сценарии, перейдите в Мониторинг → Узлы сети, найдите узел сети в списке и нажмите на гиперссылку Web в последнем столбце.

Нажмите на имя сценария, чтобы увидеть более подробную статистику:
