Свойства сессий и действий: прокачиваем мониторинг в Ключ-АСТРОМ
Содержание
При мониторинге веб- и мобильных приложений важно не только фиксировать пользовательские действия, но и передавать дополнительную информацию, которая позволяет глубже анализировать поведение пользователей. Здесь на помощь приходят свойства сессий и действий в Ключ-АСТРОМ. Этот функционал позволяет собирать данные из различных источников, включая метаинформацию о пользователе, его предпочтениях и дополнительных параметрах, доступных в момент выполнения действия.
Использование свойств сессий и действий дает возможность не только видеть последовательность шагов пользователя в приложении, но и анализировать его интересы, поведение и технические характеристики устройства. Это особенно важно при диагностике проблем, персонализации контента и анализе пользовательского опыта.
Настройка свойств сессий и действий в Ключ-АСТРОМ
Чтобы настроить свойства сессий и действий, необходимо выполнить следующие шаги:
- Определить ключевые параметры, которые требуется отслеживать (например, роль пользователя, регион, тип подписки, отслеживаемые продукты или номера заявок и т. д.).
- Определить источник данных – это может быть URL, JavaScript-переменная, cookie, HTTP-заголовок или данные, переданные через API.
- Настроить захват данных автоматически с помощью JS-агента или через API JS агента.
Захват свойств с использованием JS-агента
JS-агент Ключ-АСТРОМ автоматически собирает информацию о пользовательских действиях. Достаточно настроить свойство в настройках определенного приложения:
- Переходим в настройки приложения > Захват > Свойства сеанса и действий > Добавить свойство.
- Здесь можно выбрать свойства, которые доступны по умолчанию или же создать свойство с определенным источником.
- Свойства по умолчанию предоставляют возможность захватить:
| Параметр | Описание | Какие данные можно получить | Пример использования в КА |
|---|---|---|---|
| Referer | URL источника, с которого пользователь перешёл на сайт. | - Источники трафика (поисковики, соцсети, рефералы). - Эффективность внешних ссылок. | Анализ, какие сайты приводят больше всего пользователей. |
| User Agent | Строка, идентифицирующая браузер, ОС и устройство пользователя. | - Тип устройства (ПК, мобильное, планшет). - Браузер и его версия. - Операционная система. | Выявление проблем в определённых браузерах или на iOS/Android. |
| UTM Source (utm_source) | Источник кампании (например, google, facebook). | - Платформы, привлекающие трафик. - Сравнение эффективности рекламных каналов. | Сравнение трафика из Google Ads и Facebook. |
| UTM Medium (utm_medium) | Тип трафика (cpc, email, social, organic). | - Эффективность платного трафика vs. органического. - ROI email-рассылок. | Оптимизация бюджета на контекстную рекламу. |
| UTM Campaign (utm_campaign) | Название рекламной кампании. | - Успешность конкретных маркетинговых акций. - Сравнение A/B-тестов. | Оценка конверсии кампании "Black_Friday_2024". |
| UTM Term (utm_term) | Ключевое слово (для PPC-рекламы). | - Какие ключевики приводят целевых пользователей. - Эффективность SEO/PPC. | Оптимизация ставок на ключевые слова в Google Ads. |
| UTM Content (utm_content) | Дополнительный идентификатор (например, для A/B-тестов). | - Какие баннеры/тексты лучше конвертируют. - Оптимизация креативов. | Сравнение кликабельности двух вариантов рекламного объявления. |
- Если же необходимо подобрать значение из других источников, выберите вкладку “Настраиваемое свойство”
- Выбираем источник и указываем ключ.
- Указываем хранилище и, при необходимости, задаем правило очистки.
Для настройки свойств можно использовать встроенные механизмы агента. Например, для передачи пользовательского идентификатора можно выполнить следующий код:
dtrum.identifyUser("user_id");
Также можно задать свойства действия:
//создаем объект с данными о пользователе const
userDataObj = {
"userInfo": {
"value": "Ivan, 45 y.o., male, moderator"
}
}
//инициализация действия, в рамках которого будет передано свойство
const actionId = dtrum.enterAction("anyUserAction");
//передаем свойство
dtrum.addActionProperties(actionId, undefined, undefined, userDataObj);
//завершаем действие
dtrum.leaveAction(actionId);
Кейсы использования
Анализ предпочтений пользователей
Компания хочет анализировать, какие функции приложения наиболее востребованы среди пользователей разных ролей. Для этого можно настроить передачу свойства user_role при начале сессии и затем сопоставлять его с действиями внутри приложения.
const userInfo = {
"user_role": {
"value": "premium"
}
}
dtrum.sendSessionProperties(undefined, undefined, userInfo);
Затем можно в USQL выполнить запрос для анализа активности:
SELECT userId FROM usersession WHERE stringProperties.userInfo IS NOT NULL GROUP BY userId
Это поможет найти пользователей с ролью 💎premium💎.
Экспорт данных через API и потоковый экспорт
Ключ-АСТРОМ предоставляет возможность экспортировать собранные данные через API. Запрос к API может выглядеть так:
curl -X 'GET' \
'https://astromkey.ru/e/1111-2222-3333-4444/api/v1/userSessionQueryLanguage/table?query=SELECT%20%2A%20FROM%20usersession&addDeepLinkFields=false&explain=false' \
-H 'accept: application/json' \
-H 'Authorization: Api-Token abcdefjhij1234567890'
Для потокового экспорта можно настроить передачу данных в сторонние системы, указав целевой эндпоинт и формат JSON.
Пример JSON-формата данных:
{
"screenOrientation": "PORTRAIT",
"displayResolution": "FHD",
"hasCrash": false,
"hasSessionReplay": true,
"isp": "China Mobile",
"clientType": "Desktop Browser",
"stringProperties": [
{
"key": "web_useragent",
"applicationId": "TravelApp",
"internalApplicationId": "APPLICATION-4C0BF00879B1D844",
"value": "Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0 Safari/537.36"
},
{
"key": "anycookie",
"applicationId": "TravelApp",
"internalApplicationId": "APPLICATION-4C0BF00879B1D844",
"value": "1742901086142958ALDC8N8CEFGS19HR0C8QNSNGA1GQE"
}
]
}
Эти данные могут быть интегрированы в BI-системы или системы персонализации контента.
Использование свойств сессий и действий в Ключ-АСТРОМ позволяет значительно расширить возможности мониторинга и анализа пользовательского поведения. Это помогает не только диагностировать технические проблемы, но и глубже понимать предпочтения пользователей, персонализировать интерфейсы и улучшать пользовательский опыт. Интеграция с USQL и API делает анализ данных гибким и удобным, а потоковый экспорт позволяет легко встраивать данные в другие системы.