Анализ действий пользователей по скриншотам мониторинга в дашборде
В этом кейсе разберем, как собирать скриншоты мониторинга и выводить их в дашборде для анализа действий пользователей.
Агент мониторинга устанавливается на рабочие станции сотрудников и фиксирует бизнес-действия пользователей в интерфейсах приложений — используемые программы, открытые документы и последовательность действий. Кроме того, система может сохранять скриншоты, которые отражают фактический контекст работы пользователя в момент выполнения операции.
Результаты такого сбора можно просматривать с помощью шаблонных отчетов Task Mining и мониторинга пользовательской активности. В шаблонном отчете мониторинга пользовательской активности доступны скриншоты мониторинга.
Однако для быстрого просмотра результатов исследования не всегда требуется настраивать шаблонный отчет. В таких случаях можно подготовить собственный дашборд и вывести в нем только те данные и скриншоты, которые нужны для анализа.
В этом кейсе рассматривается именно такой сценарий: аналитик работает с данными Task Mining, выявляет участок, который требует дополнительной детализации, и создает отдельный дашборд для анализа пользовательской активности и скриншотов. В рамках кейса рассмотрим несколько вариантов отображения скриншотов мониторинга в дашборде.
Этапы реализации решения
Настройка собственного дашборда для анализа пользовательских действий и скриншотов выполняется в несколько этапов:
- Этап 1 — исследование и сбор данных
- Этап 2 — создание скрипта для подготовки данных
- Этап 3 — создание дашборда
- Этап 4 — фиксированное отображение скриншота по ID
- Этап 5 — отображение скриншота через переменную
- Этап 6 — отображение скриншота через меру
- Этап 7 — отображение скриншота по выбранному ID
- Этап 8 — открытие скриншота из журнала активности
- Этап 9 — публикация дашборда
Исследование и сбор данных
В первую очередь настроим и запустим исследование для пользователей, на рабочих станциях которых установлен агент мониторинга. Во время активного исследования агент мониторинга зафиксирует действия пользователей и сохранит скриншоты.
- Создайте и настройте новое Исследование.
- Во вкладке Основное укажите название и сроки проведения исследования. При необходимости включите размытие скриншотов.
- Сохраните настройки.
- Во вкладке Пользователи добавьте пользователей, чью активность требуется зафиксировать в рамках исследования. Для этого нажмите + Добавить, выберите пользователей и подтвердите выбор кнопкой Применить.
- Запустите исследование на указанный период.
Создание скрипта для подготовки данных
На этом этапе создадим скрипт, который выбирает из таблицы активности нужные поля, подготавливает данные по скриншотам и записывает их в таблицу рабочего пространства. В дальнейшем мы будем использовать эту таблицу как источник данных для дашборда.
- Перейдите в раздел Пространство, нажмите Добавить и создайте новое пространство.
- Откройте Панель управления в созданном пространстве, нажмите Добавить и выберите Скрипт.
- Задайте название скрипта и нажмите Добавить.
- Добавьте в скрипт блок Ручной запуск и протестируйте его.
- Добавьте блок SQL-запрос для очистки таблицы, в которой будут храниться результаты мониторинга.
- В параметрах блока укажите запрос:
Обратите внимание: таблица
truncate table if exists user_activity -- Произвольное название таблицыuser_activityна этом этапе еще не создана, но блок можно протестировать сразу — запрос сif existsотрабатывает корректно, даже если таблица отсутствует. - Добавьте блок Выбрать строки через SQL-запрос.
- В параметрах блока укажите SQL-запрос, который выбирает из таблицы активности поля, необходимые для будущего дашборда. Перечислите в запросе все нужные колонки, например:
select employee_account_id, program, main_window, screenshot_id, time from !${global.activity_table} - Добавьте блок Добавить строки для записи выбранных данных в таблицу модели данных.
- В поле Таблица в раскрывающемся меню нажмите + Добавить таблицу и выберите опцию Создать из выходных данных.
- Отметьте блок, данные которого нужно подставить в таблицу, и нажмите Добавить.
- Введите имя таблицы
user_activityи нажмите Добавить. - Нажмите Автозаполнение полей выходными данными, чтобы подставить поля маппинга в колонки новой таблицы, и подтвердите выбор полей с помощью кнопки Применить.
Обратите внимание: таблицаuser_activity, на которую мы ссылались ранее при создании блока SQL-запрос, будет создана автоматически при завершении настройки блока Добавить строки. - Протестируйте блок.
- Опубликуйте скрипт и активируйте его.
Создание дашборда
Теперь создадим дашборд и настроим его общие элементы: основной заголовок, фильтры и вкладки. Фильтры позволяют нам отбирать записи, которые должны отображаться в виджетах, а во вкладках будут представлены разные сценарии просмотра скриншотов по способу передачи идентификатора.
- Перейдите в Панель управления в рабочем пространстве, нажмите Добавить и выберите Дашборд.
- Задайте название и подтвердите создание дашборда, нажав Сохранить.
- Добавьте в образ виджет Текст, в нем укажите заголовок дашборда.
- Ниже добавьте виджет Фильтр для выбора пользовательской активности за определенный период. Укажите наименование Период и определите разрез, выбрав колонку
timeтаблицыuser_activity. - Аналогичным образом добавьте фильтр Программа с формулой
"user_activity"."program". - Добавьте новый компонент Вкладки.
Фиксированное отображение скриншота по ID
На этом этапе настроим способ отображения, при котором в дашборде всегда показывается один и тот же скриншот с заранее известным идентификатором. Такой вариант подходит для примеров, демонстрационных сценариев и проверки настройки виджета.
Для вывода изображения используется специальное выражение, в котором идентификатор скриншота указывается напрямую в атрибуте src тега <img>.
- Выделите первую вкладку и переименуйте ее, указав название Фиксированный скриншот.
- Добавьте во вкладку виджет Текст.
- В поле Текст добавьте:
Где:
<img src="?{id скриншота}" style="width: 100%; object-fit: scale-down;"/>?{id скриншота}— значение ID скриншота, которое передается в элемент для отображения изображенияwidth: 100%— растягивание изображения на всю доступную ширину элементаobject-fit: scale-down— уменьшение изображения до размеров области отображения без искажения пропорций
Отображение скриншота через переменную
На этом этапе настроим способ отображения, при котором идентификатор скриншота передается через переменную. Такой вариант подходит для сценариев, где значение задается отдельно и затем используется в элементе дашборда без ручного редактирования самого выражения.
Для вывода изображения также будем использовать специальное выражение, но в этом случае подставим в него значение переменной типа Статический список с идентификатором скриншота.
- Добавьте вкладку и переименуйте ее, указав название Скриншот по переменной.
- Создайте переменную типа Статический список, например Список id.
- В поле Список укажите несколько идентификаторов скриншотов в одинарных
''кавычках и установите значение по умолчанию. - Добавьте во вкладку виджет Текст со специальным выражением с переменной:
Где:
<img src="?{${Список id}}" style="width: 100%; object-fit: scale-down;"/>?{${Список id}}— название переменной типа Статический список
Отображение скриншота через меру
На этом этапе настроим способ отображения, при котором идентификатор скриншота передается через меру. Такой вариант подходит для случаев, когда идентификатор нужного скриншота определяется расчетом в поле Формула при настройке меры.
В этом сценарии специальное выражение получает идентификатор скриншота из меры, а затем отображает соответствующее изображение в виджете Текст.
- Добавьте вкладку и переименуйте ее, указав название Скриншот по мере.
- Добавьте во вкладку виджет Текст.
- Создайте меру, указав формулу с идентификатором нужного скриншота в одинарных
''кавычках. - В поле Текст укажите:
Где:
<img src="?{{Формула}}" style="width: 100%; object-fit: scale-down;"/>?{{Формула}}— название меры
Отображение скриншота по выбранному ID
На этом этапе настроим способ отображения по выбранному ID: аналитик, работающий с дашбордом, выбирает идентификатор скриншота в управляющем параметре и получает соответствующее изображение. Такой вариант подходит для точечного просмотра нужного скриншота по известному идентификатору.
Для отображения изображения используется специальное выражение, в которое подставляется значение переменной, выбранное пользователем в параметре.
- Добавьте вкладку и переименуйте ее, указав название Скриншот по ID.
- Создайте переменную типа Динамический список, например id скриншота.
- В поле Список укажите колонку
screenshot_idтаблицыuser_activity. - Во вкладку Скриншот по ID добавьте виджет Параметр и в параметрах виджета укажите добавленную переменную id скриншота.
- Разместите виджет Текст под параметром, в поле Текст укажите:
Где:
<img src="https://{доменное имя Proceset}/graphql?query=%7Bmonitoring_screenshot%7Bscreenshot(screenshot_uuid:%22${id скриншота}%22)%7D%7D" style="max-width: 100%; height: auto;" />https://{доменное имя Proceset}— адрес сервера Proceset${id скриншота}— переменная, в которую передается значение ID скриншотаmax-width: 100%— ограничение изображения по ширине контейнераheight: auto— сохранение пропорций изображения
- Опубликуйте дашборд и проверьте его работу — перейдите во вкладку Скриншот по ID и в раскрывающемся списке параметра выберите произвольное значение. Убедитесь, что скриншот отобразился. Смените значение и проверьте, что теперь отображается другой скриншот.
- Снова откройте дашборд в режиме редактирования.
Открытие скриншота из журнала активности
На этом этапе настроим журнал активности в формате таблицы, где по клику на идентификатор можно открыть соответствующий скриншот. Такой способ удобен, когда нужно перейти от записи о действии пользователя к просмотру конкретного изображения.
При клике в таблице выбирается ячейка со значением screenshot_id. Это значение передается в открываемый образ как входящее. Затем в открывшемся образе в виджете Текст это входящее значение подставляется в выражение для загрузки изображения, и в результате отображается соответствующий скриншот.
- Добавьте вкладку и переименуйте ее, указав название Журнал активности.
- Во вкладке создайте Таблицу.
- Добавьте необходимые разрезы, выбрав соответствующие колонки таблицы
user_activity. Например, employee_account_id, program и screenshot_id. - Добавьте дополнительный образ, в котором будет отображаться скриншот, например Отображение скриншотов.
- В дополнительный образ добавьте Входящее значение.
- Задайте название переменной, выберите тип данных Текст и в поле Значение по умолчанию укажите любое значение колонки
screenshot_id—any("user_activity"."screenshot_id"). - Добавьте в образ виджет Текст и настройте отображение скриншота, используя Входящее значение.
Где:
<img src="https://{доменное имя Proceset}/graphql?query=%7Bmonitoring_screenshot%7Bscreenshot(screenshot_uuid:%22${Входящее значение}%22)%7D%7D" style="max-width: 100%; height: auto;" />https://{доменное имя Proceset}— адрес сервера Proceset${Входящее значение}— входящее значение, в которое передается ID скриншотаmax-width: 100%— ограничение изображения по ширине контейнераheight: auto— сохранение пропорций изображения
- Перейдите в домашний образ, откройте вкладку Журнал активности и выделите таблицу. Разверните разрез screenshot_id и добавьте действие по клику.
- Выберите тип действия по клику — Открыть образ, затем укажите образ, который нужно открыть, — Отображение скриншотов.
- Автоматически откроется область Параметры для настройки передачи значения из таблицы в образ. Укажите способ ввода Из колонки и колонку, значение из которой должно передаваться как входящее значение в образ Отображение скриншотов.
- Вернитесь назад к настройкам действия по клику и заполните оставшиеся поля: укажите название действия, область открытия образа (например, в боковом окне), необходимость учитывать фильтры.
- Перейдите во вкладку настройки фильтрации таблицы и отключите фильтрацию.
- Опубликуйте дашборд и перейдите во вкладку Журнал активности.
- Кликните по идентификатору скриншота.
- В открывшемся боковом окне отображается скриншот действия пользователя.
- Снова откройте дашборд в режиме редактирования.
Публикация дашборда
Наконец, проверим работу всех способов отображения, уточним порядок вкладок дашборда, оформим его и опубликуем. После публикации дашборд будет использоваться аналитиками для просмотра скриншотов, проверки гипотез и анализа пользовательской активности.
- На боковой панели образов измените порядок вкладок.
- Настройте оформление образов. Например, установите максимальную ширину домашнего образа — 1200 px.
- Аналогичным образом настройте дополнительный образ.
- Опубликуйте дашборд.
- Проверьте работу дашборда. Для этого установите значения фильтров и откройте нужную вкладку. Например, чтобы уточнить, какие действия выполнял пользователь в Microsoft Edge, выберите в фильтре Программа значение Microsoft Edge и просмотрите записи на вкладке Журнал активности. При необходимости дополнительно задайте период. Кликните по идентификатору скриншота в таблице и убедитесь, что в боковом окне открылось изображение, связанное с выбранной записью.
Итоговый результат настройки дашборда
В результате получается дашборд, который позволяет просматривать скриншоты несколькими способами: по фиксированному идентификатору, через переменную, через меру, по выбранному ID и из журнала активности. Это позволяет использовать один и тот же набор данных как для демонстрации настройки, так и для прикладного анализа пользовательских действий.
Такой дашборд полезен в ситуациях, когда требуется подтвердить действия пользователя в конкретной программе, проверить контекст выполнения операции, разобрать отдельный сценарий работы или подготовить наглядный материал для анализа вместе с владельцем процесса, руководителем подразделения или заказчиком проекта.
Преимущества для пользователей
Решение помогает перейти от общей картины процесса к проверке конкретных действий пользователя в интерфейсе. Аналитик может сопоставить запись активности со скриншотом, уточнить контекст выполнения операции, проверить рабочую гипотезу и быстрее определить, на каком шаге возникает отклонение или затруднение.
| Роль | Польза |
|---|---|
| Аналитик | Быстро переходит от записи активности к связанному скриншоту и проверяет, что именно пользователь делал в интерфейсе |
| Владелец процесса | Видит фактический контекст выполнения операции и может точнее определить, на каком шаге возникает отклонение |
| Руководитель подразделения | Получает наглядный материал для разбора пользовательских сценариев и подтверждения гипотез по работе сотрудников |
Была ли статья полезна?