Мониторинг пользовательского опыта UX и WUX

Введение

Versión Enterprise.Версия NG 7 или выше.

Мониторинг пользовательского опыта заключается в записи автоматизированных задач как навигации веб (PWR/WUX), так и взаимодействия с рабочим столом и системными приложениями Windows (PDR). Эти записи могут варьироваться от щелчка мыши в веб-браузере, набора текста или выполнения веб-поиска до открытия приложения на рабочем столе. Это позволяет настраивать функции и автоматически записывать их для последующего выполнения в поисках результатов. Например, можно отслеживать время, затраченное на выполнение описанных задач.

Далее мы рассмотрим различия между системами WUX и UX и описание функций обеих с их различными возможностями.

Различия между UX и WUX мониторингом

Обе системы мониторинга используются для выполнения заданий по автоматическому просмотру веб-страниц через систему Pandora Web Robot Daemon (PWRD).

Система UX осуществляет этот мониторинг с помощью программного агента, установленного на машине, в то время как мониторинг WUX (Web User Experience) основан на сервере, интегрированном в Pandora FMS.

PWRD - это сервис, предоставляющий необходимые инструменты для автоматизации сеансов навегации в сети. Для этого в нем используется файл, содержащий список действий, необходимых для навигации по веб-порталу, за которым ведется наблюдение.

Кроме того, мониторинг UX позволяет выполнять автоматизированные задачи, которые взаимодействуют с рабочим столом и системными приложениями MS Windows®. Такие задачи невозможно выполнить с помощью WUX.

Pandora FMS UX - это система, которая выполняет автоматизированные задачи, передавая в Pandora FMS отчет с результатами выполнения, использованным временем и снимками экрана с возможными найденными ошибками.

Технология Pandora FMS PWR для UX позволяет осуществлять навигацию по веб-сайтам, имитируя действия пользователя. Вы можете проверить содержимое, тексты и т.д. Это идеальный выбор для мониторинга веб-сайтов и веб-приложений, не основанных на Flash® (технология, которая прекратит свое существование в 2021 году). Его преимущество: быстрая работа, возможность работы в фоновом режиме.

Если у вас есть система автоматизации задач, Pandora FMS UX также позволяет выполнять уже созданные сценарии (scripts) и контролировать их выполнение.

Важно уточнить, для чего используется этот вид мониторинга. Оба метода основаны на выполнении мониторинга через подключаемые дополнения (plugin) в Программных агентах, установленных на соответствующих машинах. Вы можете узнать больше из обучающего видеоролика «Пользовательский веб-опыт (WUX) в Pandora FMS».

Для выполнения веб-транзакций Pandora FMS использует Selenium Engine.

Пользовательский веб-опыт (WUX) с Selenium 3

Для развертывания Selenium на серверах WUX используется стек stack контейнеров для быстрого развертывания и легкого масштабирования.

Предварительные настройки

Docker и Docker Compose должны быть установлены; в качестве базовой операционной системы рекомендуется CentOS.

Для установки Docker следуйте документации, соответствующей вашей операционной системе, по адресу: https://docs.docker.com/engine/install/

Для Selenium используйте официальные образы для установки и развертывания стека на: https://hub.docker.com/u/selenium

Различные изображения с браузерами доступны в репозитории Selenium. Для Pandora FMS мы рекомендуем контейнеры Mozilla Firefox® и Google Chrome®.

Развертывание стека Selenium

Для развертывания Selenium stack необходимо создать YAML файл с необходимой конфигурацией:

# To execute this docker-compose yml file use `docker-compose -f <file_name> up`
# Add the `-d` flag at the end for detached execution
version: "3"
services:
  selenium-hub:
    image: selenium/hub:3.141.59-zinc
    container_name: selenium-hub
    ports:
      - "4444:4444"
    environment:
      - GRID_BROWSER_TIMEOUT=60000
      - GRID_TIMEOUT=60000
      - GRID_MAX_SESSION=50
      - GRID_CLEAN_UP_CYCLE=60000
      - GRID_UNREGISTER_IF_STILL_DOWN_AFTER=180000
      - GRID_NEW_SESSION_WAIT_TIMEOUT=180000
  chrome:
    image: selenium/node-chrome:3.141.59-zinc
    volumes:
      - /dev/shm:/dev/shm
    depends_on:
      - selenium-hub
    environment:
      - HUB_HOST=selenium-hub
      - HUB_PORT=4444
  firefox:
    image: selenium/node-firefox:3.141.59-zinc
    volumes:
      - /dev/shm:/dev/shm
    depends_on:
      - selenium-hub
    environment:
      - HUB_HOST=selenium-hub
      - HUB_PORT=4444

Вы можете сохранить файл с именем docker-compose.yml, чтобы его было легче идентифицировать.

Чтобы поднять контейнер с определенной вами конфигурацией, просто выполните (замените <compose-file> на имя, которое вы выбрали для файла):

docker-compose -f <compose-file> up -d

Для проверки служб, запущенных в контейнере, используйте:

docker-compose -f <compose-file> ps

Чтобы просмотреть статус и журналы служб Selenium, используйте следующую команду:

docker-compose -f <compose-file> logs

После проведения соответствующих проверок, чтобы убедиться, что grid работает правильно и workers зарегистрировались, как определено в файле конфигурации, необходимо зайти на следующий URL:

http://<ip_selenium_server>:4444/grid/console

Если вам необходимо увеличить количество workers:

docker-compose -f <compose-file> scale chrome=X firefox=Y

Инфраструктура сервиса Selenium

Selenium работает как HUB, в котором возводится контейнер, выполняющий роль grid или решетки, где развертываются необходимые worker контейнеры.

Конфигурация Pandora FMS

Для использования централизованного режима (WUX) необходимо применить следующую конфигурацию к серверу Pandora FMS.

Независимо от выбранного режима, после запуска можно начать назначать выполнение сеансов навигации, добавляя параметры конфигурации WUX Server в файл конфигурации сервера Pandora FMS.

Добавьте следующую конфигурацию в конец файла /etc/pandora/pandora_server.conf (замените <ip_wux_host> на IP-адрес сервера, если это тот же сервер, на котором работает Pandora FMS Server, используйте 127.0.0.1):

 wuxserver 1
 wux_host <ip_wux_host>
 wux_port 4444
 wux_timeout 30

Параметр wux_timeout устанавливает максимальное время транзакции в 30 секунд: при необходимости скорректируйте это значение в соответствии с конкретной средой.

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

clean_wux_sessions 1 #(default)

Приложение: Добавить workers для Internet Explorer и Microsoft Edge

В случае необходимости запуска веб-транзакций против браузеров Microsoft®, необходимо настроить машину (физическую или виртуальную) с нужной версией Windows® и настроить драйвер или driver, следуя официальной документации.

Документация по установке драйвера Internet Explorer®:

github.com/SeleniumHQ/selenium/wiki/InternetExplorerDriver

Мы рекомендуем использовать драйвер 3.141 в его 32-битной версии, чтобы избежать проблем с производительностью 64-битной версии.

Документация по установке драйвера Microsoft Edge®:

https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

Чтобы выполнить Selenium, на устройстве Windows® должна быть установлена Java®.

Чтобы проверить, доступна ли Java®, выполните команду:

java -version

Вы должны получить результат, подобный следующему:

Вам также понадобится JAR файл из Selenium, чтобы запустить сервер локально и зарегистрировать его в нашем grid. Вы можете получить его из:

https://www.selenium.dev/downloads/

Для поднятия сервера Microsoft Edge® необходимо выполнить следующее в терминале в каталоге, где находится JAR-файл:

java -jar selenium-server-standalone-<VER>.jar -port 5555 -role node -hub
http://<ip_selenium_server>:4444/grid/register -browser "browserName=MicrosoftEdge,
platform=WINDOWS, maxInstances=1"

Чтобы поднять сервер Internet Explorer®, команда аналогична, но вы должны указать путь<PATH> драйвера, который вы скачали:

java -Dwebdriver.ie.driver=<PATH>IEDriverServer.exe -jar selenium-server-
standalone<VER>.jar -port 5555 -role node -hub
http://ip_selenium_server:4444/grid/register -browser "browserName=internet
explorer,platform=WINDOWS,maxInstances=1"

Брандмауэр Windows® должен быть настроен на разрешение трафика в портах, указанных в команде выполнения. В приведенных выше примерах: 5555 и 4444.

Запись

Обратите внимание, что записи, сделанные в Selenium 2, могут работать некорректно.

Для Selenium версии 3 будут поддерживаться как старые, так и новые записи, хотя полная совместимость со старыми версиями не гарантируется.

Чтобы записать новую сессию, расширение Selenium IDE должно быть установлено в выбранном вами браузере.

Firefox

https://addons.mozilla.org/es/firefox/addon/selenium-ide/

Chrome

https://chrome.google.com/webstore/detail/selenium-ide/mooikfkahbdckldjjndioackbalphokd

Значок будет позволять запускать среду записи после установки расширения.

При нажатии открывается меню, позволяющее начать новые проекты записи.

После завершения записи результат будет выглядеть примерно так:

Помимо функции, предоставляемой Selenium, Pandora FMS имеет специализированные команды для извлечения информации из объекта мониторинга.

Команды

Список поддерживаемых команд для использования в Pandora FMS можно найти, перейдя по следующей ссылке.

Рекомендации и предложения при записи

Далее подробно изложен ряд рекомендаций и советов при записи транзакций с помощью Selenium IDE, а также для интеграции в Pandora FMS наиболее сложных команд:

  • Разделите транзакцию на этапы, когда это возможно. Таким образом, модули, создаваемые из статуса и времени, а также снимки экрана будут сегментированы, и будет легче определить, где транзакция не удалась.
  • Используйте команды Seleniumset speed иwait for, чтобы избежать ложных отрицательных результатов. При выполнении транзакции команды Selenium не имеют стандартной задержки или delay с момента завершения одной до выполнения следующей, а некоторые также не имеют времени окончания или таймаута. Таким образом, транзакция выполняется очень быстро, в кратчайшие сроки, но из-за того, что она выполняется так быстро, если веб-сайт немного медленный или его загрузка занимает на секунду больше, есть вероятность, что проверка не пройдет. Например, после выполнения команды click и переключения страниц, если у вас есть команда, которая взаимодействует с элементом на новой странице, а загрузка новой страницы задерживается на одну секунду, она не найдет элемент на новой странице, и проверка будет неудачной. Чтобы избежать таких ситуаций, существует команда set speed, которая добавляет delay с количеством миллисекунд, указанных в цели или Target между каждой командой. Рекомендуется установить это в начале транзакции. Также для случаев, когда известно, что загрузка страницы или появление элемента может занять несколько секунд, существуют команды wait for element present, wait for visible и wait for text, в которых вы можете задать время в миллисекундах, в течение которого нужно ждать появления элемента на странице, прежде чем пометить транзакцию как неудачную. Важно отметить, что использование этих команд, хотя и значительно повышает надежность проверки, также увеличивает время, необходимое для выполнения транзакции.
  • Проведение проверок элементов Для этого используются такие команды, как assert и verify, в их различных формах. Например, завершение операции щелчком мыши не гарантирует, что откроется новая страница, которую должен открыть элемент, по которому мы щелкнули, а только то, что можно кликнуть по элементу. Если после клика мы введем verify text к тексту, который, как известно, загружается только после клика, это будет одним из способов проверить, доступна ли страница, на которую нас отправляет клик.
  • Используетсяstore window handle в транзакциях, где окна должны переключаться. Переключение окон (с помощью select window) может завершиться неудачей, если идентификатор начального окна не был сохранен ранее.
  • Используетсяxpath когда Target по идентификатору CSS не работает или когда вы хотите искать содержимое на странице. По умолчанию регистратор Selenium IDE вставляет в Target элемента локатор CSS, но он также сохраняет локатор по xpath, поэтому можно увидеть все локаторы, которые он сохраняет, если нажать на поле Target в регистраторе:

Кроме того, используя пути xpath, можно искать текст внутри тегов страницы для гораздо более динамичных записей. На скриншоте выше обратите внимание, что можно использовать xpath, который ищет текст «Инноваторы Мониторинга» во всех тегах span на странице, а не в конкретном локаторе.

  • Правильное использование командыexecute script. Эта команда выполняет фрагмент кода JavaScript в том окне, где он расположен в транзакции. Рекомендуется прочитать руководство, чтобы узнать, как им пользоваться и какие опции он предлагает: https://ui.vision/rpa/docs/selenium-ide/executescript . Однако использование ранее сохраненных переменных (например, командой store text) должно быть заключено в двойные кавычки, чтобы webdriver Pandora FMS правильно их интерпретировал. Вот пример переменной, сохраненной с помощью store text и ее последующего использования в execute script так, чтобы сервер Pandora FMS интерпретировал ее правильно. Обратите внимание, что такое использование переменной в кавычках будет неудачным при запуске сценария в рекордере Selenium IDE:

Пользовательский веб-опыт (WUX) с Selenium 2

Предварительные настройки

Selenium

Развертывание с помощью Pandora Web Robot Daemon (PWRD)

Pandora FMS Web Robot Daemon - это служба, которая предоставляет необходимые инструменты для автоматизации сеансов просмотра веб-страниц, используя файл, содержащий список действий, необходимых для просмотра веб-портала пользователя.

Он интегрирован в сервер Pandora FMS и может быть найден в папке /usr/share/pandora_server/util/pwrd при установке сервера Enterprise (Linux) или в библиотеке модулей (Windows).

Чтобы загрузить его, перейдите по следующей ссылке: https://pandorafms.com/library/pandora-ux-and-wux-pwr-recorder/

Содержит:

  • Двоичный файл браузера Firefox версии 47.
  • Предварительно созданный профиль для запуска сеансов просмотра веб-страниц.
  • Сервер автоматизации сессий (сервер Selenium).
Развертывание сервера Selenium на системах Windows

Необходимые предварительные требования:

  • Установите Java® 1.8 на машину, предоставляющую услугу.
  • Установите Firefox® 47.0.1 (который можно скачать на https://ftp.mozilla.org/pub/firefox/releases/47.0.1/).
  • Подготовьте профиль Firefox®, который будет использоваться для тестирования автоматизированных сессий (необязательно): http://toolsqa.com/selenium-webdriver/custom-firefox-profile/
  • Создайте следующий каталог: C:\PWR .

Чтобы загрузить PWR_Server.zip, перейдите по следующей ссылке:

https://pandorafms.com/library/pwr-server-for-ux-monitoring/

Сделайте следующее распределение файлов:

  • Распакуйте файл PWR_Server.zip в C:\PWR\.
  • Экспортируйте профиль Firefox® в C:\PWR\profile

Использование профиля для выполнения проверок не является обязательным, однако его использование рекомендуется, особенно при использовании прокси или когда требуется автоматическое заполнение пароля. Чтобы создать профиль Firefox®, выполните следующие действия:

ux1.jpg

ux2.jpg

Выбор каталога назначения:

ux3.jpg

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

ux4.jpg

Затем установите службу, запустив предоставленный BAT-файл service_installer.bat. Для корректной работы service_installer.bat вам придется изменить его содержимое, разместив пути, существующие в файле, так, как они установлены на вашей машине. Например, в случае Java®, он может работать как Java®, только если вы правильно настроили PATH для него; в противном случае, вам придется указать весь PATH внутри файла. Наконец, запустите службу:

net start PWRSRV

С этого момента на вашей машине будет запущен сервер Selenium. Однако вы можете запустить его вручную (предварительно остановив службу) в случае, если вы хотите выполнить отладку или задачи debugging, используя следующую команду:

java -jar C:\PWR\server\selenium-server-standalone-2.53.0.jar -firefoxProfileTemplate C:\PWR\profile -port 4444 -v
Развертывание сервера Selenium на системах Linux

Необходимые предварительные требования:

  • Установите Java® 1.8 на машину, предоставляющую услугу.
  • Установите Firefox® 47.0.1 (который можно скачать на https://ftp.mozilla.org/pub/firefox/releases/47.0.1/).
  • Подготовьте профиль Firefox®, который будет использоваться для тестирования автоматизированных сессий (необязательно): http://toolsqa.com/selenium-webdriver/custom-firefox-profile/
  • Установите xorg-x11-server-xvfb.
  • Установите Java®.

Компонент Selenium демона PWRD требует Java® для работы, чтобы установить его запустите:

yum install Java

Чтобы PWRD мог запускать Firefox® на сервере GNU/Linux, необходимо дополнительно установить gtk2 и gtk3 для возможности виртуализации графической среды:

yum install xorg-x11-server-Xvfb gtk2 gtk3

Если он отсутствует в репозиториях, вы можете найти файлы .rpm по следующим ссылкам:

ftp://rpmfind.net/linux/centos/6.6/os/x86_64/Packages/xorg-x11-server-Xvfb-1.15.0-22.el6.centos.x86_64.rpm

ftp://rpmfind.net/linux/centos/7.4.1708/os/x86_64/Packages/gtk2-2.24.31-1.el7.x86_64.rpm

Чтобы установить пакеты .rpm вручную:

 yum install xorg-x11-server-Xvfb-1.15.0-22.el6.centos.x86_64.rpm
 yum install gtk2-2.24.31-1.el7.x86_64.rpm

После установки предварительных условий мы продолжаем установку install_pwrd.sh. Эта программа установки по умолчанию находится в папке /usr/share/pandora_server/util/pwrd/install_pwrd.sh и запускается следующим образом:

 cd /usr/share/pandora_server/util/pwrd/
 ./install_pwrd.sh --install

После установки необходимо запустить службу:

/etc/init.d/pwrd start

Вы можете использовать следующий скрипт для запуска сервера Selenium:

#!/bin/sh
# Monitoring selenium process
if [[ "`ps aux |grep selenium |grep -v grep |grep -v selenium.sh |wc -l `" != "0" ]]; then
   exit
else
   if [[ "`ps aux |grep Xvfb |grep -v grep | wc -l `" != "0" ]]; then
      Xvfb :99 -ac &
      export DISPLAY=:99
   fi
   export DISPLAY=:99
   java -jar /usr/share/pandora_server/util/pwrd/selenium-server-standalone-2.53.1.jar &
fi

Или вручную с помощью следующих команд:

$ Xvfb :99 -ac &
-> Нажмите Enter, чтобы продолжить
$ export DISPLAY=:99
$ Java® -jar  /usr/share/pandora_server/util/pwdr/selenium-server-standalone-2.53.1.jar -port 4444 &

У вас также есть возможность выполнить персонализированную установку с пользователем и каталогом, отличными от установки по умолчанию.

Режимы работы PWRD

PWRD обеспечивает несколько режимов работы:

Standalone

Стандартный режим, запускает один экземпляр PWRD. Каждый из этих экземпляров будет связан с сервером Pandora FMS.

HUB

Режим концентратора. В этом режиме служба PWRD не оценивает сеансы навигации напрямую, а должна зарегистрировать «узлы» для выполнения заданий. Это кластерный режим работы службы PWRD. Каждому HUB будет присвоен сервер Pandora FMS.

PWRD в режиме standalone

PWRD в режиме standalone запускает демон и делает его готовым к выполнению заданных пользователем действий через сервер WUX.

Для того, чтобы начать:

/etc/init.d/pwrd start

Чтобы просмотреть статус:

/etc/init.d/pwrd status

Чтобы остановить:

/etc/init.d/pwrd stop

PWRD в режиме HUB

Режим концентратор(HUB) запускает демон в качестве балансировщика нагрузки. В этом режиме работы система будет балансировать нагрузку между всеми узлами, которые зарегистрировались в ней, распределяя выполнение сеансов навигации по узлам в соответствии с их загруженностью.

Вы можете просмотреть состояние концентратора в любое время, обратившись к консоли администрирования концентратора (замените <dir_ip_HUB> на IP-адрес HUB):

http://<dir_ip_HUB>:4444/grid/console

Для того, чтобы начать:

/etc/init.d/pwrd start-hub

Чтобы просмотреть статус:

/etc/init.d/pwrd status-hub

Чтобы остановить:

/etc/init.d/pwrd stop-hub

Добавление узлов PWRD в наш HUB

Чтобы добавить новый узел PWRD, необходимо:

  • Концентратор (PWRD в режиме HUB).
  • Файлы PWRD, на той же или другой машине.
  • TCP/4444 соединение от оборудования, на котором расположен узел, к оборудованию, на котором расположен HUB.

В этом режиме работы служба обрабатывает все запросы, поставленные в очередь от концентратора (HUB), возвращая результаты выполнения на HUB. Именно HUB будет «общаться» исключительно с сервером WUX, оставаясь прозрачным для того, кто выполняет действия пользователя.

Для запуска и регистрации в HUB (замените hub на IP сервера PWRD HUB):

/etc/init.d/pwrd start-node http://hub:4444/grid/register

Чтобы просмотреть статус:

/etc/init.d/pwrd status-node

Чтобы остановить:

/etc/init.d/pwrd stop-node
Конфигурация сервера Pandora FMS

Для использования централизованного режима (WUX) необходимо применить следующую конфигурацию к серверу Pandora FMS.

Независимо от выбранного режима, после запуска вы можете начать назначать исполнения сеансов навигации, добавляя параметры конфигурации WUX Server в файл конфигурации сервера Pandora FMS.

Предполагая, что вы развернули сервер PWRD на том же сервере, где запущен сервер Pandora FMS, задайте следующую конфигурацию в /etc/pandora/pandora_server.conf>

 wuxserver 1
 wux_host 127.0.0.1
 wux_port 4444
Загрузка сертификатов для Firefox

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

Для этого проще всего запустить браузер в графической среде, получить доступ к URL-адресу и добавить SSL-сертификат. Далее объясняется как это сделать как в MS Windows®, так и в GNU/Linux®:

При использовании PWRD, развернутого на системах Windows

В этом случае, поскольку у вас сразу есть графическая среда, вам достаточно запустить браузер Firefox® с профилем, который вы используете для проверок:

После запуска зайдите на URL-адрес с сертификатом, который вы хотите загрузить, и добавьте его в качестве исключения для браузера:

Другая возможность, если вы хотите принять любой SSL сертификат и учитывая, что это среда тестирования и/или мониторинга, заключается в том, чтобы зайти в параметры Firefox®, вкладка «Конфиденциальность & Безопасность» и снять галочку в поле «Запрашивать серверы ответчиков OCSP для подтверждения действительности текущего сертификата»:

При использовании PWRD, развернутого на системах Linux

Обычно, когда вы устанавливаете сервер GNU/Linux®, он не включает графическую среду рабочего стола, поэтому, чтобы выполнить те же шаги, что и в предыдущем случае, вы должны перенаправить графические X на машину, где у вас есть графическая среда рабочего стола. Это делается по-разному, если мы перенаправляем Xs на графический рабочий стол в GNU/Linux или MS Windows®.

Перенаправление X11 на рабочий стол Linux

Установите SSH-соединение с сервером PWRD с параметром «-X»:

ssh -X user@pwrd_ip_address

После этого, запустив браузер Firefox, вы сможете увидеть, как он отображается на рабочем столе:

firefox -p

При установке по умолчанию мы увидим только профиль «по умолчанию», поэтому рекомендуется поступить так же, как при установке MS Windows®, и создать новый профиль для использования:

В случае сохранения профиля по пути, отличному от /opt/firefox_profile, необходимо отредактировать сценарий запуска PWRD /etc/init.d/pwrd, чтобы указать путь к новому профилю:

PWROPTS=" -firefoxProfileTemplate /path/to/profile/folder"

Создав профиль, вы можете запустить браузер:

После запуска зайдите на URL-адрес с загружаемым сертификатом и добавьте его в качестве исключения для браузера:

Другая возможность, если вы хотите принять любой SSL сертификат и учитывая, что это тестовая и/или мониторинговая среда, заключается в том, чтобы зайти в опции Firefox, на вкладку «Расширенный > Сертификаты» и снять галочку в поле «Запрос серверов-ответчиков OCSP для подтверждения текущей действительности сертификата»:

Перенаправление X11 на рабочий стол в Windows

В случае с Windows сначала необходимо установить X-сервер, чтобы иметь возможность выполнять перенаправление, например Xming. После установки и запуска вы можете выполнить X-перенаправление.

Использование клиента SSH Putty,перед подключением перейдите в раздел «Conection > SSH > X11» и убедитесь, что отметили опцию «Enable X11 forwarding» и заполнили поле «X display location» как «localhost:0»:

Затем вернитесь в раздел «Session» и установите соединение:

После установления соединения, если вы запустите браузер Firefox® на сервере PWRD, вы сможете просмотреть его на рабочем столе MS Windows®.

firefox -p

В стандартной установке мы увидим только профиль «default», поэтому целесообразно поступить, как при установке Windows®, и создать новый профиль для использования:

В случае сохранения профиля по пути, отличному от /opt/firefox_profile, необходимо отредактировать script запуска PWRD /etc/init.d/pwrd «Сертификады», и снять галочку в поле «Запрос отвечающих серверов OCSP для подтверждения текущей валидности сертификатов»:

Регистратор сеансов (PWR)

Новая версия Selenium IDE совместима начиная с версии 745 Pandora FMS (Selenium 3). Транзакции, записанные в Selenium 2, не будут затронуты.

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

Сессии, записанные с помощью Selenium 2, могут быть осуществлены только с помощью Firefox®.

Для записи навигации с помощью PWR требуется регистратор PWRD, имеющийся в библиотеке модулей:

https://pandorafms.com/library/pandora-ux-and-wux-pwr-recorder/

Содержит:

Регистратор должен быть запущен PWR_recorder.exe .

Автоматический запуск Firefox со средой, настроенной для записи сеансов PWR:

После доступа к Selenium IDE можно начать запись пользовательского опыта:

ux10.jpg

Перемещайтесь по веб-сайту, который необходимо контролировать; различные действия каждого выполненного шага будут отображаться в регистраторе.

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

ux11.jpg

После завершения действий выполните проверку на странице; например, проверьте наличие определенного текста, чтобы убедиться, что загруженная страница является правильной. Для этого щелкните правой кнопкой мыши на участке текста в окне браузера, когда запись еще идет, и выберите опцию verifyText:

ux13.jpg

В регистраторе появляется новый шаг, указывающий на указанное действие по проверке текста:

ux14.jpg

Вы можете воспроизвести всю последовательность с помощью кнопки Play whole test suite и проверить, что она завершается правильно:

ux15.jpg

После проверки правильности навигационной последовательности сохраните (Archive → Save Test Case), чтобы выполнить ее позже с помощью Pandora FMS UX. Полученный файл будет представлять собой HTML-документ, который Pandora FMS UX будет интерпретировать.

Запись транзакционной сессии для Pandora WUX

Pandora FMS WUX позволяет разделить мониторинг навигации сайта на несколько модулей, которые представляют каждый из выполняемых шагов.

Чтобы вставить новую контрольную точку и сгенерировать модули фазы (до этой точки), щелкните правой кнопкой мыши на точке, где вы хотите определить начало фазы.

В качестве комментария поместите, пожалуйста, следующий текст:

phase_start:<phase_name>

Фаза охватывает время и результат всех встреченных команд до следующего комментария:

phase_end:<phase_name>

Все команды, выполненные между тегами phase_start и phase_end, будут входит в эту фазу.

Обратите внимание, что записи, сделанные в Selenium 3, могут работать некорректно.

Выполнение веб-транзакций

Стандартное выполнение

Для запуска предварительно записанных сессий PWR вызовите исполняемый файл pandora_ux_x64.exe, который можно загрузить по следующей ссылке:

https://pandorafms.com/library/user-experience-pandora-ux

Укажите, что рабочий режим - PWR, и файл, содержащий указания по сеансу. В пути, указанном в параметре -folder, хранятся скриншоты, которые будут отображаться в случае ошибки (необязательный параметр). Также можно ввести количество последовательных повторных попыток в случае сбоя (необязательный параметр). Его выполнение в Windows:

pandora_ux_x64.exe -exe PWR -script C:\tests\std.html -retries 3

Будут возвращены следующие модули:

  • UX_Status_<имя_проекта» была ли последовательность успешной или нет.
  • UX_Time_<имя_проекта» время, необходимое для завершения последовательности.
  • UX_Snapshot_<имя_проекта» скриншот с последней точкой перед ошибкой, если таковая имеется.

Пример правильно выполнения:

<module>
   <name><![CDATA[UX_Status_std.html]]></name>
   <type>generic_proc</type>
   <data><![CDATA[1]]></data>
   <description><![CDATA[Test OK]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
</module>
<module>
   <name><![CDATA[UX_Time_std.html]]></name>
   <type>generic_data</type>
   <data><![CDATA[16.317]]></data>
   <description><![CDATA[Test OK]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
   <module_parent>UX_Status_std.html</module_parent>
</module>

Пример некорректно выполнения:

<module>
   <name><![CDATA[UX_Status_std.html]]></name>
   <type>generic_proc</type>
   <data><![CDATA[0]]></data>
   <description><![CDATA[Failed to execute verifyText]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
</module>
<module>
   <name><![CDATA[UX_Time_std.html]]></name>
   <type>generic_data</type>
   <data><![CDATA[15.463]]></data>
   <description><![CDATA[Failed to execute verifyText]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
   <module_parent>UX_Status_std.html</module_parent>
</module>

<module>
   <name><![CDATA[UX_Snapshot_std.html]]></name>
   <type>async_string</type>
   <data><![CDATA[data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAA…JRU5ErkJggg==]]></data>
   <description><![CDATA[Image (last error)]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
   <module_parent>UX_Status_std.html</module_parent>
</module>

Если все было сделано правильно, вы можете добавить строку выполнения в агент Pandora FMS, установленный на машине, которую вы подготовили к выполнению проверок. Строка, которую нужно добавить в конфигурационный файл агента, будет выглядеть примерно так (в одну строку):

В Windows®:

module_plugin C:\Users\artica\Documents\Producto\UX-Trans\UX\pandora_ux_x64.exe -exe PWR -script C:\Users\artica\Documents\Producto\UX-Trans\PWR\sesion.html -folder <путь screenshots>

В Linux:

module_plugin /usr/share/pandora_server/util/pwrd/firefox/pandora_ux.64 -exe PWR -script /usr/share/pandora_server/util/pwrd/firefox/PruebaUX.html -pwr_port 4444

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

ux33.jpg

Как указано выше, вы увидите результат выполнения (успешно или нет) в модуле UX_Status_sesion. html, затраченное время (в секундах) в модуле UX_Time_sesion.html, и еще один со снимком последней ошибки в UX_Snapshot_sesion.html, который в данном случае пуст. Именно на этих модулях можно создавать оповещения и отображать отдельные графики для каждого модуля.

Выполнение основанное на фазах

Если у вас транзакционная запись с Pandora FMS UX PWR, как указано в предыдущих разделах, то сама система будет генерировать необходимые модули для идентификации каждой из указанных фаз, поэтому выполнение не отличается по отношению к предыдущему случаю; достаточно указать соответствующий html-файл, который в данном случае будет содержать различные фазы. Пример выполнения в Windows:

pandora_ux_x64 -exe PWR -script C:\tests\std.html --folder <path screenshots>

На каждую фазу должны быть возвращены следующие модули:

  • UX_Time_project_name.phase_order
  • UX_Status_project_name.phase_order

Если есть фаза с ошибкой, то также создается следующий модуль:

  • UX_Snapshot_project_name.phase_order

Он отобразит образ веб-сайта в момент возникновения ошибки.

Также возвращаются глобальные сводные модули, идентифицированные следующими именами:

  • UX_Global_Time_project_name
  • UX_Global_Status_project_name
  • UX_Global_Snapshot_project_name

И будет показан образ сайта в момент ошибки.

Строка выполнения агента будет такой же, как и в предыдущем случае, но с html-файлом, содержащим оговоренные фазы.

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

ux34.jpg

Зайдя в раздел WUX агента, вы можете просмотреть дополнительные детали транзакции и ее фазы.

Приведенный ниже пример представляет собой процесс просмотра нашего сайта, состоящий из нескольких статей и разделенный на 5 фаз, чтобы точно измерить затраченное время и понять, где необходимы улучшения или где возникает узкое место:

ux44.jpg

Восстановление значений

Pandora FMS UX может получать данные непосредственно из Интернета во время проведения тестов пользовательского опыта.

Чтобы использовать эту новую функцию, единственное, что вам нужно добавить, это команду capture в качестве комментария в Selenium-тест:

В прилагаемом примере после выполнения навигации извлекаются два значения, которые представлены в виде модулей в Pandora FMS (число и результат в виде текста).

Ниже перечислены шаги, которые необходимо выполнить, чтобы дать команду плагину на сбор данных:

  • Добавьте новый комментарий к тестовому файлу с помощью рекордера Selenium.
  • Добавьте директиву в комментарий.

Директива по сбору данных

getValue;<имя модуля<;<тип данных модуля<;<регулярное выражение для сбора данных>

Что представляет собой каждое поле, разделенное точкой и запятыми?

getValue

Инструкция для системы UX.

Имя модуля

Имя модуля, как оно отображается в Pandora FMS.

Тип данных модуля

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

Регулярное выражение Perl, которое будет использоваться для захвата данных

Это должно быть регулярное выражение Perl, с командой для захвата информации между скобками.

Например, в тексте:

<p>Температура солнечной панели составляет: <span class ="температура ">54º C</span></p>

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

<span class ="температура">(\d+\.*\,*\d*).*</span>

Таким образом вы получите значение 54 из примера или возможные значения с десятичными знаками.

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

getValue;Температура солнечной панели;generic_data;<span class="температура">(\d+\.*\,*\d*).*</span>

Команды, которые генерируют модули, следующие:

  • getValue: Извлекает значение.
getValue;module_name;module_type;capture_REGEX
  • getVariable: (Версия NG 753 или выше ) Извлекает определенное значение из переменной.
getVariable;module_name;module_type;variable_name
  • getScreenshot: Извлеките снимок экрана.
getScreenshot;module_name


getValue - это команда, которая относится к типу, генерируемому модулями PFMS. Посетите вышеуказанную ссылку, чтобы узнать о них больше.


Все собственные команды должны присутствовать в тестовом файле (.side) в виде комментариев. В противном случае он не пройдет тестирование в расширении Selenium.

Управление данными и визуализация

Создание модуля веб-аналитики в Pandora FMS Console

После того как вы записали сеанс навигации, пришло время развернуть его как модуль в консоли Pandora FMS.

Для этого зайдите в любой агент, связанный с сервером с включенной функцией WUX, и создайте модуль типа веб-анализа, выбрав опцию Create a new web analysis module:

Нажмите на кнопку Create, а затем заполните все поля, представленные в форме:

Name

Модуль WUX (Родительский); помните, что все подмодули с результатами мониторинга будут зависеть от этого нового модуля.

Run performance tests

Указывает на запуск тестов производительности, т.е. на мониторинг не только опыта навигации, но и статистики производительности доступа к целевому веб-сайту.

Execute tests from

Указывает сервер WUX для выполнения проверки.

Browser

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

Указанный браузер должен быть указан в grid или Selenium-сервере, используемом сервером WUX.

Accept insecure certificates

Если включено, будет принят любой незащищенный сертификат (автоподписанный, просроченный и т.д.), который является частью навигации.

Эта опция доступна только для браузеров Google Chrome® и Mozilla Firefox® и будет действовать, только если проверка выполняется сервером Selenium 3.

Historical data

Сохраняет или не сохраняет историческую информацию модулей, которые проводят мониторинг этого пользовательского опыта.

Область текста

Скопируйте (или загрузите с помощью кнопки Browse…) содержимое файлов сеанса навигации, которые вы ранее сохранили.

Пользовательские макросы

Работа пользовательских макросов заключается в замене определенных текстовых строк в файле сеанса навигации на определенные настраиваемые значения.

В случае модулей веб-аналитики эта функция была расширена, позволяя использовать динамические макросы, которые позволяют переводить эти значения в переменные даты и время.

Почему именно эта функция?

Предположим, что с помощью сеанса навигации вам необходимо производить мониторинг правильности работы веб-приложения для бронирования конференц-залов.

Если при заполнении формы вы задаете фиксированную дату и время, возможно, что система отменит бронирование, поскольку в какой-то момент оно окажется в прошлом; например, вы пытаетесь забронировать зал на прошлую неделю.

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

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

Для того чтобы использовать эту функцию, значения должны иметь определенный формат, достигая следующих возможных замен:

  • @DATE_FORMAT: текущая дата/время в заданном пользователем формате.
  • @DATE_FORMAT_nh: часы.
  • @DATE_FORMAT_nm: минуты.
  • @DATE_FORMAT_nd: день.
  • @DATE_FORMAT_ns: секунды.
  • @DATE_FORMAT_nM: месяц.
  • @DATE_FORMAT_nY: год.

Где “n” может быть беззнаковым (положительным) или отрицательным числом.

А FORMAT следует стандарту strftime Perl

Примеры:

 @DATE_%Y-%m-%d %H:%M:%S
 @DATE_%H:%M:%S_300s
 @DATE_%H:%M:%S_-1h

Визуализация данных

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

В этой иерархии мы найдем следующие модули:

  • модуль_Global_Status: Указывает глобальный статус всей навигации.
    • Если запись присутствует, отображается статус записи WUX.
    • В случае если run performance Test включен, но запись не включена, статус модуля <Global Status> является статусом проверки, которая выполняется при получении этих модулей.
  • модуль_Global_Time: Указывает глобальное время, затраченное на полную навигацию.
  • модуль_Global_Screenshot: Содержит изображение с результатом ошибки навигации, создается только в случае ошибки.
  • модуль_Phase X: Имя фазы_Status: Указывает состояние навигации во время фазы X.
  • модуль_Phase X: Имя фазы_Time: Указывает время, затраченное на фазу X.

Пример: Вид снимка ошибок.

Внимание: Если вы перешли с предыдущих версий на Pandora FMS 7.0NG 712, вам необходимо сделать небольшое изменение.

Для хранения скриншотов, создаваемых WUX Server, вы должны выполнить следующие операции над схемой вашей базы данных:

 alter table tagente_estado modify column datos mediumtext;
 alter table tagente_datos_string modify column datos mediumtext;

Невыполнение этих действий может привести к отключению снимков.

Зайдя в раздел WUX агента, вы можете просмотреть дополнительные детали транзакции и ее фазы:

Статистика сайта обобщается в следующих понятиях:

  • Stats_TT: Общее время получения веб-сайта.
  • Stats_TDNS: Общее время разрешения IP-адреса цели.
  • Stats_TTCP: Время, затраченное на подключение через TCP.
  • Stats_TSSL: Время, необходимое для установления связи SSL.
  • Stats_TST : Время, прошедшее до начала передачи данных.
  • Stats_TTC: Время передачи данных; агрегирует все время передачи ресурсов.
  • Stats_TTR: Время, затраченное на передачу содержимого страницы.
  • Stats_TTR_main: Время, затраченное на передачу HTML-кода.
  • Stats_TTR_image: Время, затрачиваемое на передачу ресурсов типа изображение (png|jpg|jpeg|bmp|tiff|gif|webp|svg).
  • Stats_TTR_css: Время, затрачиваемое на перенос таблиц стилей.
  • Stats_TTR_js: Время, затраченное на передачу файлов JavaScript.

Назначение оповещений для модуля веб-аналитики

Оповещения, связанные с модулями веб-анализа, имеют ту же динамику работы, что и вся система оповещения в Pandora FMS.

Для совместимости рекомендуется назначать шаблоны оповещений на подэлементы, автоматически генерируемые модулем веб-аналитики, например, :

  • Состояние глобальной навигации.
  • Оповещения по временным порогам.
  • Оповещения с шаблоном предупреждения, установленным на значение «всегда» для модулей снимка изображения результата.

Новые widgets для Dashboards

Для представления навигационной информации пользователя были добавлены два новых типа виджетов:

Виджет состояния фазы навигации

Виджет статистики сайта

Пользовательский опыт использования рабочего стола (PDR)

Развертывание системы PDR

Versión Enterprise.

Система PDR работает только в системах Windows®, а при выполнении Агента Pandora FMS; она должна работать в режиме процесса, поскольку запуск в режиме сервиса не будет работать. Кроме того, не удастся заблокировать сессию рабочего стола, поэтому рекомендуется использовать на виртуальных машинах.

Необходимые предварительные требования:

  • Система Windows® в режиме рабочего стола с автоматической загрузкой и автоматическим входом в систему.

Чтобы добиться такой конфигурации, выполните следующие действия:

Для версий до Windows 10®:

control userpasswords2

Снимите флажок с поля Users must enter a user name and password to use this computer:

ux5.jpg

Нажмите на кнопку Ok и введите свое имя пользователя и пароль.

Для Windows 10®:

Одним из способов включения автозапуска в MS Windows®, версии 10, является использование Powertoys от Sysinternals (доступно в разделе загрузокдокументации Microsoft®) предоставление пользователю возможности осуществлять мониторинг, например:

Для подготовки среды создайте следующий каталог:

C:\PDR

И распакуйте файл PDR.rar (представленный в следующей ссылке https://pandorafms.com/library/pdr-cmd-for-ux-monitoring/) в данной папке.

Проведение сессий PDR

Запись транзакционной сессии с Pandora FMS UX PDR

Нет необходимости записывать конкретную сессию; просто записывайте нужные вам сессии в разных сценариях. Именно Pandora FMS UX будет управлять возвратом результатов, чтобы организовать его как сложную операцию. В следующем пункте мы рассмотрим, как сделать так, чтобы вызов выполнения работал правильно.

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

В следующем примере осуществляется процесс записи, который представляет собой вторую фазу процесса, использованного в предыдущем примере. Возьмем результат, возвращенный калькулятором, и вставим его в блокнот. Запись выглядит следующим образом:

ux40.jpg

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

ux43.jpg

Проведение сессий PDR

Стандартное выполнение

Чтобы запустить предварительно записанные сеансы PDR, укажите, что рабочий режим - это путь к файлу pdr. cmd, отображаемый в соответствующем пункте, скрипт этого файла -r, файл, содержащий указания по сеансу (-script), каталог, куда сохранять скриншоты (-folder), заканчивающийся на ‘\rsquo;, который является необязательным, куда сохранять скриншоты в папке, где находится pdr. Также можно ввести количество последовательных повторных попыток в случае сбоя (необязательный параметр).

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

pandora_ux_x64 -exe C:\PDR\pdr -args -r -script C:\pandora_ux\calculadora.sikuli -folder C:\pandora_ux\ -ss_config active -retries 3

Будут возвращены следующие модули:

  • UX_Time_имя_проекта.
  • UX_Status_имя_проекта.
  • UX_Control_Snapshot_имя_проекта (только при первом выполнении).

Если есть фаза с ошибкой, то также создается следующий модуль:

  • UX_Snapshot_имя_проекта.

Покажет изображение активного окна (с -ss_config active) в момент возникновения ошибки.

Пример правильно выполнения:

<module>
   <name><![CDATA[UX_Status_calculadora.sikuli]]></name>
   <type>generic_proc</type>
   <data><![CDATA[1]]></data>
   <description><![CDATA[C:\pandora_ux\calculadora.sikuli execution completed Control snapshot rebuild ]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
</module>
<module>
   <name><![CDATA[UX_Time_calculadora.sikuli]]></name>
   <type>generic_data</type>
   <data><![CDATA[20.204]]></data>
   <description><![CDATA[C:\pandora_ux\calculadora.sikuli execution completed Control snapshot rebuilt ]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
   <module_parent>UX_Status_calculadora.sikuli</module_parent>
</module>
<module>
   <name><![CDATA[UX_Control_Snapshot_calculadora.sikuli]]></name>
   <type>async_string</type>
   <data><![CDATA[data:image/png;base64, IBCAIAAAAOCnfhAAAAAXNSR…/4x79e/7757f8H2C00s1C73yMAAAAASUVORK5CYII=]]></data>
   <description><![CDATA[Control image rebuilt]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
   <module_parent>UX_Status_calculadora.sikuli</module_parent>
</module>

Пример вывода при неудачном выполнении:

<module>
   <name><![CDATA[UX_Status_std.html]]></name>
   <type>generic_proc</type>
   <data><![CDATA[0]]></data>
    <description><![CDATA[Failed to execute verifyText]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
</module>
<module>
   <name><![CDATA[UX_Time_std.html]]></name>
   <type>generic_data</type>
   <data><![CDATA[15.463]]></data>
    <description><![CDATA[Failed to execute verifyText]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
   <module_parent>UX_Status_std.html</module_parent>
</module>
<module>
   <name><![CDATA[UX_Snapshot_std.html]]></name>
   <type>async_string</type>
   <data><![CDATA[data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAA…JRU5ErkJggg==]]></data>
    <description><![CDATA[Image (last error)]]></description>
   <tags>UX</tags>
   <module_group>UX</module_group>
   <module_parent>UX_Status_std.html</module_parent>
</module>

Если все прошло успешно, вы можете добавить строку выполнения в агент Pandora FMS, установленный на машине Windows® как Plugin Агента. Строка, которую нужно добавить в конфигурационный файл агента, будет выглядеть примерно так (в одну строку):

module_plugin C:\Users\artica\Documents\Producto\UX-Trans\ux\pandora_ux_x64.exe -exe C:\PDR\pdr.bat -args -r -script C:\PDR\calc.sikuli -folder C:\PDR\ -ss_config active -checkpoint -post "taskkill /F /IM calc.exe"

Как можно видеть, у этого выполнения есть немного больше опций. Параметр -checkpoint используется для отображения захвата конечного результата, даже если нет сбоя; -post выполняет действия после завершения воспроизведения сессии. В данном случае мы собираемся закрыть процесс калькулятора, который начал запись, чтобы предотвратить крах системы из-за слишком большого количества открытых окон или подобных процессов.

Теперь, когда Агент имеет готовую строку выполнения module_plugin, вы должны запустить его в режиме процесса, выполнив следующие действия из командной строки от имени администратора:

"%ProgramFiles%\pandora_agent\PandoraAgent.exe" --process

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

Если у вас уже есть тесты автоматизации, вы можете включить их в Pandora FMS с помощью следующего выполнения.

pandora_ux.64 -exe <exe системы автоматизации> -args <скрипты системы> -script <путь файлов тестирования>

Выполнение на основе транзакций

Если мы записали различные процессы с помощью PDR и проверили, что они работают непрерывно, воспроизводя их , мы их запустим следующим образом:

C:\Users\artica\Documents\Producto\UX-Trans\ux\pandora_ux_x64.exe -exe C:\PDR\pdr.cmd -args -r -t calculadora_trans -script C:\PDR\calc.sikuli,C:\PDR\savecalc.sikuli,C:\PDR\savefile.sikuli -folder C:\PDR\ -ss_config active

Как видно, мы просто укажем путь нового скрипта в параметре -script, отделенный запятой от предыдущего скрипта, и используем параметр -t с именем транзакции, которая будет охватывать различные фазы. Если бы процесс обладал большим количеством фаз, он следовал бы той же логике; например:

pandora_ux_x64.exe -exe C:\PDR\pdr.cmd -args -r -t proceso_transaccional -script C:\PDR\script1,C:\PDR\script2,C:\PDR\script3,C:\PDR\script4 -folder C:\PDR\ -ss_config active

В данном случае в конфигурационный файл агента нужно добавить следующую строку:

module_plugin C:\Users\artica\Documents\Producto\UX-Trans\ux\pandora_ux_x64.exe -exe C:\PDR\pdr.cmd -args -r -t calculadora_trans -script C:\PDR\calc.sikuli,C:\PDR\savecalc.sikuli,C:\PDR\savefile.sikuli -folder C:\PDR\ -ss_config active -checkpoint -post "taskkill /F /IM calc.exe"

Благодаря параметру -checkpoint вы можете увидеть скриншоты конечного результата каждого этапа в консоли Pandora FMS.

На каждую фазу должны быть возвращены следующие модули:

  • UX_Time_имя_проекта.фаза_порядок.
  • UX_Status_имя_проекта.фаза_порядок.

Если есть фаза с ошибкой, то также создается следующий модуль:

  • UX_Snapshot_имя_проекта.фаза_порядок.

Он также покажет изображение веб-сайта в момент ошибки, если таковая возникнет.

Также возвращаются глобальные сводные модули, идентифицированные следующими именами:

  • UX_Global_Time_имя_проекта.
  • UX_Global_Status_имя_проекта.
  • UX_Global_Snapshot_имя_проекта.

Когда агент работает в режиме процесса и модули восстанавливаются с помощью Pandora FMS, мы увидим их в консоли. Опять же, используя просмотр иерархического режима, мы можем четко показать взаимосвязь между показанными модулями, четко разграничивая различные фазы:

ux41.jpg

А в окне просмотра транзакций мы можем увидеть детали фаз и график со временем:

ux42.jpg

Снимки ошибок будут отображаться только в том случае, если клиент UX (PWR) и сервер PWR работают на одной машине. В противном случае каталог доставки изображений сервером PWR должен быть доступен клиенту, чтобы иметь возможность показать изображение в Pandora FMS.

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

Рекомендуется создать запрограммированную задачу, которая запускает агент Pandora FMS в режиме процесса при запуске оборудования, таким образом выполнение не будет прервано даже в случае принудительного перезапуска системы. Находясь в режиме автоматического входа без пароля, агент всегда будет работать, даже если машина будет перезагружена.

ux26.jpg

ux27.jpg

ux28.jpg

ux29.jpg

ux30.jpg

ux31.jpg

ux32.jpg

Таким образом, мы гарантируем, что в этой системе Windows Агент Pandora FMS всегда будет работать в режиме процесса, даже когда машина перезагружается, и всегда сможет отправлять информацию, собранную зондом PDR.

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

Вернуться в оглавление Документации Pandora FMS