Создание пользовательских метрик из сеансов пользователей для веб-приложений
С помощью настраиваемых показателей сеанса пользователя ( uscm.
префикс ) вы можете извлекать показатели KPI бизнес-уровня из данных сеанса пользователя и сохранять их в виде временных рядов. Затем вы можете использовать сохраненные метрики в пользовательских диаграммах , механизмах оповещения или Metrics API .
Пользовательские показатели сеанса пользователя могут помочь вам ответить на такие вопросы, как:
- Как индекс пользовательского опыта для моего веб-сайта меняется с течением времени?
- Как доход, полученный моими пользователями, меняется с течением времени?
- Сколько пользователей заходит на мой сайт и какие браузеры они используют?
- Какова средняя продолжительность сеанса для моего мобильного приложения?
Вы можете создавать и управлять пользовательскими показателями сеанса пользователя с помощью веб-интерфейса Dynatrace или API настроек Dynatrace .
Настройка метрик через пользовательский интерфейс
Вы можете создавать и управлять пользовательскими показателями сеанса пользователя с помощью веб-интерфейса Dynatrace.
- В меню Dynatrace выберите « Настройки » > « Веб- и мобильный мониторинг » > «Индивидуальные показатели сеанса пользователя » .
- Выберите Добавить элемент .
- Введите ключ метрики , который следует использовать при приеме метрики. Вы будете использовать этот ключ при запросе данных метрики через Data Explorer .
- В разделе Тип значения для извлечения выберите один из следующих вариантов:
- Счетчик пользовательских сеансов для подсчета количества пользовательских сеансов, аналогичный
COUNT(*)
при использовании USQL . - Значение поля сеанса пользователя для извлечения значения поля сеанса пользователя. Также укажите Имя поля , которое должно совпадать с именем поля USQL. Возможные значения см . в разделе Имена полей значений .
- Счетчик пользовательских сеансов для подсчета количества пользовательских сеансов, аналогичный
- В разделе Добавить измерение укажите поля, которые следует использовать в качестве измерений. Обратите внимание, что размеры должны соответствовать именам полей USQL. Возможные значения см. в разделе Размеры .
- В разделе Добавить фильтр включите необходимые фильтры.
- Введите Имя поля , которое должно совпадать с именем поля USQL. Возможные значения см. в разделе Фильтрация имен полей .
- Выберите Оператора .
- Если вы выбрали один из бинарных операторов, например, равно или больше , также укажите второй аргумент в текстовом поле Значение .
Кроме того, вы можете использовать USQL для создания пользовательских показателей сеанса пользователя. После выполнения введенного запроса выберите Создать пользовательскую метрику .С помощью настраиваемых показателей сеанса пользователя ( uscm.
префикс ) вы можете извлекать показатели KPI бизнес-уровня из данных сеанса пользователя и сохранять их в виде временных рядов. Затем вы можете использовать сохраненные метрики в пользовательских диаграммах , механизмах оповещения или Metrics API .
Пользовательские показатели сеанса пользователя могут помочь вам ответить на такие вопросы, как:
- Как индекс пользовательского опыта для моего веб-сайта меняется с течением времени?
- Как доход, полученный моими пользователями, меняется с течением времени?
- Сколько пользователей заходит на мой сайт и какие браузеры они используют?
- Какова средняя продолжительность сеанса для моего мобильного приложения?
Вы можете создавать и управлять пользовательскими показателями сеанса пользователя с помощью веб-интерфейса Dynatrace или API настроек Dynatrace .
Настройка метрик через пользовательский интерфейс
Вы можете создавать и управлять пользовательскими показателями сеанса пользователя с помощью веб-интерфейса Dynatrace.
- В меню Dynatrace выберите « Настройки » > « Веб- и мобильный мониторинг » > «Индивидуальные показатели сеанса пользователя » .
- Выберите Добавить элемент .
- Введите ключ метрики , который следует использовать при приеме метрики. Вы будете использовать этот ключ при запросе данных метрики через Data Explorer .
- В разделе Тип значения для извлечения выберите один из следующих вариантов:
- Счетчик пользовательских сеансов для подсчета количества пользовательских сеансов, аналогичный
COUNT(*)
при использовании USQL . - Значение поля сеанса пользователя для извлечения значения поля сеанса пользователя. Также укажите Имя поля , которое должно совпадать с именем поля USQL. Возможные значения см . в разделе Имена полей значений .
- Счетчик пользовательских сеансов для подсчета количества пользовательских сеансов, аналогичный
- В разделе Добавить измерение укажите поля, которые следует использовать в качестве измерений. Обратите внимание, что размеры должны соответствовать именам полей USQL. Возможные значения см. в разделе Размеры .
- В разделе Добавить фильтр включите необходимые фильтры.
- Введите Имя поля , которое должно совпадать с именем поля USQL. Возможные значения см. в разделе Фильтрация имен полей .
- Выберите Оператора .
- Если вы выбрали один из бинарных операторов, например, равно или больше , также укажите второй аргумент в текстовом поле Значение .
Кроме того, вы можете использовать USQL для создания пользовательских показателей сеанса пользователя. После выполнения введенного запроса выберите Создать пользовательскую метрику .
Настройка метрик через API
Вы также можете использовать API настроек для настройки пользовательских показателей сеанса пользователя.
- Создайте токен доступа с разрешениями Запись параметров (
settings.write
) и Чтение параметров (settings.read
). - Используйте конечную точку схемы GET a , чтобы узнать формат JSON, необходимый для публикации вашей конфигурации. Идентификатор схемы конфигурации метрики (
schemaId
) —builtin:custom-metrics
. Вот пример полезной нагрузки JSON с конфигурацией метрики:
- Используйте конечную точку объекта POST для отправки конфигурации.
Свойства конфигурации и поддерживаемые значения
Свойства конфигурации
Имущество | Описание | Возможные значения |
---|---|---|
enabled
|
Определяет, включена ли пользовательская метрика. Установите для false временного отключения метрики.
|
true или жеfalse
|
metricKey
|
Ключ метрики, используемый при приеме метрики. Должен начинаться с uscm. префикса. Используйте этот ключ при запросе данных метрики через Data Explorer .
|
|
value
|
Источник значения метрики. | |
value.type
|
Чтобы подсчитать количество пользовательских сеансов, как COUNT(*) при использовании USQL , установите значение COUNTER . Чтобы извлечь значение поля сеанса пользователя, установите значение FIELD . Обратите внимание, что поля действий пользователя не поддерживаются.
|
COUNTER или жеFIELD
|
value.fieldName
|
Если value.type = FIELD , указывает имя поля сеанса пользователя.
|
См . Имена полей значений . |
dimensions
|
Список полей, используемых в качестве измерений. | См . Размеры . |
filters
|
Указывает фильтры. | |
filter.fieldName
|
Указывает имя поля фильтра. | См. Фильтр имен полей . |
filter.operator
|
Указывает оператора. | EQUALS , NOT_EQUAL , IS_NULL , IS_NOT_NULL , LIKE , LESS_THAN , LESS_THAN_OR_EQUAL_TO , GREATER_THAN ,GREATER_THAN_OR_EQUAL_TO
|
filter.value
|
Например, для бинарных операторов EQUALS or GREATER_THAN предоставляет второй аргумент.
|
Имена полей значений
- Dynatrace поддерживает только поля сеанса пользователя. Поля действий пользователя не поддерживаются.
- Все имена полей должны совпадать с именами полей USQL.
- Префикс
usersession.
в имени поля необязателен. Например,usersession.duration
иduration
означают одно и то же. - Когда настроенное поле содержит
null
, метрика игнорируется, но Dynatrace использует самоконтроль для выявления таких случаев.
Поддерживаемые имена полей
duration
numberOfRageClicks
numberOfRageTaps
totalErrorCount
totalLicenseCreditCount
userActionCount
longProperties.*
—Любое пользовательское длинное свойство, например, longProperties.outerwidth
doubleProperties.*
—Любое пользовательское двойное свойство, например,doubleProperties.revenue
Габаритные размеры
- Поддерживаются как поля сеанса пользователя, так и поля действий пользователя. Поля действий пользователя поддерживаются, начиная с Dynatrace 1.234.
- Все имена полей должны совпадать с именами полей USQL.
- Префиксы:
- Для имени поля сеанса пользователя
usersession.
префикс необязателен. Например,usersession.country
иcountry
означают одно и то же. При приеме метрикиusersession.
префикс отбрасывается, например,usersession.country
становитсяcountry
. - Для имени поля действия пользователя
useraction.
префикс обязателен. При приеме метрикиuseraction.
префикс сохраняется.
- Для имени поля сеанса пользователя
- К одной метрике можно добавить до 10 параметров.
- Когда поле, сконфигурированное как измерение, содержит
null
, Dynatrace используетnull
строку в качестве значения измерения. - Когда вы используете
useraction.application
в качестве параметра и сеанс пользователя охватывает несколько приложений, значение пользовательского показателя сеанса пользователя записывается для каждого приложения. Чтобы значение не отображалось как двойное, разделите метрику по приложению.
Поля сеанса пользователя
appVersion
applicationType
bounce
browserFamily
browserMajorVersion
browserType
carrier
region
continent
country
connectionType
device
displayResolution
endReason
hasCrash
hasError
hasSessionReplay
manufacturer
networkTechnology
newUser
osFamily
osVersion
reasonForNoSessionReplay
reasonForNoSessionReplayMobile
rootedOrJailbroken
screenHeight
screenOrientation
screenWidth
userExperienceScore
userType
stringProperties.*
— Любое пользовательское строковое свойство, например, stringProperties.author
. Используйте поля с низкой кардинальностью, чтобы не создавать слишком много значений измерения.
Поля действий пользователя
useraction.application
(начиная с Dynatrace 1.234)
Имена полей фильтра
- Поддерживаются как поля сеанса пользователя, так и поля действий пользователя.
- Все имена полей должны совпадать с именами полей USQL.
- Префиксы:
- Для имени поля сеанса пользователя
usersession.
префикс необязателен. Например,usersession.country
иcountry
означают одно и то же. - Для имени поля действия пользователя
useraction.
префикс обязателен.
- Для имени поля сеанса пользователя
- Когда вы добавляете несколько фильтров, все они должны совпадать — фильтры объединяются с помощью
AND
. - Для фильтров, использующих поле действия пользователя, требуется соответствие хотя бы одному действию пользователя. Действия пользователя сопоставляются с помощью
ANY
. - Для одной метрики можно настроить до 10 фильтров.
Поля сеанса пользователя
appVersion
applicationType
bounce
browserFamily
browserMajorVersion
browserMonitorName
browserType
carrier
city
region
continent
country
connectionType
device
displayResolution
duration
endReason
hasCrash
hasError
hasSessionReplay
ip
isp
manufacturer
networkTechnology
newUser
numberOfRageClicks
osFamily
osVersion
reasonForNoSessionReplay
reasonForNoSessionReplayMobile
rootedOrJailbroken
screenHeight
screenOrientation
screenWidth
totalErrorCount
totalLicenseCreditCount
userActionCount
userExperienceScore
userId
userType
longProperties.*
—Любое пользовательское длинное свойство, например, longProperties.outerwidth
doubleProperties.*
—Любое пользовательское двойное свойство, например, doubleProperties.revenue
stringProperties.*
—Любое пользовательское строковое свойство, например,stringProperties.author
Поля действий пользователя
useraction.apdexCategory
useraction.application
useraction.cdnBusyTime
useraction.cdnResources
useraction.customErrorCount
useraction.domCompleteTime
useraction.domContentLoadedTime
useraction.documentInteractiveTime
useraction.domain
useraction.duration
useraction.firstInputDelay
useraction.firstPartyBusyTime
useraction.firstPartyResources
useraction.frontendTime
useraction.hasCrash
useraction.internalApplicationId
useraction.internalKeyUserActionId
useraction.javascriptErrorCount
useraction.keyUserAction
useraction.largestContentfulPaint
useraction.name
useraction.networkTime
useraction.requestErrorCount
useraction.serverTime
useraction.speedIndex
useraction.targetUrl
useraction.thirdPartyBusyTime
useraction.thirdPartyResources
useraction.type
useraction.visuallyCompleteTime
Известные ограничения
Мы определили следующие ограничения для пользовательских показателей сеанса пользователя:
- Вы можете зафиксировать до 500 пользовательских метрик для каждой среды.
- Синтетические данные сеанса пользователя не учитываются в значениях пользовательских показателей; включены только данные реальных пользователей.
- Dynatrace обновляет пользовательские показатели каждый раз при закрытии сеанса. Это означает, что данные сеанса в реальном времени не учитываются в значениях пользовательских метрик; включаются только данные закрытого сеанса.
- Ключевое
DISTINCT
слово, используемое в USQL , не поддерживается. Если у вас есть такой запросSELECT COUNT(DISTINCT country) from usersession
, невозможно создать эквивалентный специальный показатель.
Пример
Чтобы лучше понять, как работают пользовательские показатели сеанса пользователя, вы можете следовать приведенному ниже примеру.
Используя веб-интерфейс Dynatrace, давайте создадим показатель средней продолжительности сеанса на основе данных о сеансах реальных пользователей. Метрика будет включать два измерения для сегментации данных сеанса по семейству браузеров и основной версии браузера. Используя эту метрику, мы затем создадим диаграмму для метрики, закрепим диаграмму на информационной панели и создадим специальное событие для метрики, чтобы вы могли получать оповещения, когда значение метрики превышает указанный порог.
Создать показатель
- В меню Dynatrace выберите « Настройки » > « Веб- и мобильный мониторинг » > «Индивидуальные показатели сеанса пользователя » .
- Выберите Добавить элемент .
- Введите
uscm.average_duration_of_sessions_by_browser_family_and_version
в качестве метрического ключа . - В разделе Тип значения для извлечения выберите Значение поля сеанса пользователя . Кроме того, установите для имени поля значение
duration
. - Выберите Добавить измерение и добавьте измерения
browserMajorVersion
иbrowserFamily
. - В разделе Добавить фильтр включите следующие фильтры:
userType
=REAL_USER
( Имя поляuserType
, Операторequals
, ЗначениеREAL_USER
) _ _useraction.application
=www.easytravel.com
( Имя поляuseraction.application
, Операторequals
, Значение )www.easytravel.com
. _ Вместо использованияwww.easytravel.com
значения вы можете использовать имя своего собственного приложения.
- Выберите Сохранить изменения .
Теперь у вас есть настраиваемая метрика сеанса пользователя, которая извлекается как поле ( duration
) только в том случае, если оно useraction.application
равно www.easytravel.com
(фильтрация для определенного приложения) и userType
равно REAL_USER
(фильтрация только для реальных пользователей). Кроме того, вы добавили два измерения, которые позволяют разделить данные на основе семейства браузеров или основной версии браузера.
После получения данных сеанса пользователя и заполнения метрики вы можете составить график этой метрики, закрепить диаграмму на информационной панели и даже создать оповещение на основе метрики.
Создание и закрепление диаграммы
Теперь давайте создадим диаграмму на основе uscm.average_duration_of_sessions_by_browser_family_and_version
метрики и привяжем эту диаграмму к одной из ваших информационных панелей.
- В меню Dynatrace выберите Проводник данных .
- Выберите
uscm.average_duration_of_sessions_by_browser_family_and_version
показатель и выберите Выполнить запрос . - С помощью обозревателя данных разделите собранные данные, чтобы просмотреть данные сеанса пользователя, разделенные на основе
browserMajorVersion
,browserFamily
, или того и другого. - Отфильтруйте данные о сеансе пользователя на основе интересующих вас данных о сеансе пользователя
browserMajorVersion
илиbrowserFamily
сосредоточьтесь на них. - Создав диаграмму, представляющую ваши данные, закрепите диаграмму на информационной панели: выберите Закрепить на информационной панели , выберите одну из своих информационных панелей и введите имя плитки.
Создать оповещение
В последней части этого примера мы создадим оповещение на основе пользовательской метрики сеанса пользователя.
Чтобы создать оповещение
- В меню Dynatrace выберите « Настройки » > « Обнаружение аномалий » > «Пользовательские события для оповещения » .
- Выберите Создать специальное событие для оповещения .
- Создайте пользовательское событие на основе
uscm.average_duration_of_sessions_by_browser_family_and_version
метрики. Дополнительные сведения см. в разделе События метрик для оповещения .
Часто задаваемые вопросы
Я вижу данные сеанса пользователя, но не вижу данные пользовательской метрики сеанса пользователя в обозревателе данных.
Убедитесь, что сеанс пользователя не активен. Dynatrace извлекает и сохраняет метрические данные во временных рядах только после закрытия сеанса пользователя.
Почему показатели сеансов в реальном времени не отображаются в обозревателе данных?
Поскольку сеансы закрываются в веб-приложениях, они помещаются в очередь для последующей обработки. Затем несколько фоновых рабочих извлекают данные метрик из пользовательских сеансов, чтобы подготовить данные для приема метрик.
Почему результаты моего запроса USQL не соответствуют специальной метрике?
Синтетические данные сеанса пользователя не учитываются в пользовательских показателях сеанса пользователя.
Исключите синтетические сеансы из вашего запроса. Кроме того, убедитесь, что к запросу и метрике применяются одни и те же временные рамки.
Как выставляются счета за пользовательские показатели сеансов пользователей?
Начиная с Dynatrace SaaS 1.232, пользовательские метрики из сеансов пользователей подлежат лицензированию блока данных Дэвиса (DDU) . Эти метрики оплачиваются как обычные метрики без схемы.
Чтобы оценить стоимость метрики, оцениваются сеансы за последние 7 дней, а стоимость в DDU на метрику рассчитывается в соответствии с ожидаемым приемом в минуту. Подробнее см. в разделе Как мы рассчитываем потребление DDU для пользовательских метрик? .
Какова степень детализации интервала для пользовательских показателей сеанса пользователя?
Хранение метрик и данных Dynatrace следует стратегии хранения данных, которая объединяет метрики с течением времени. Стратегия хранения данных, применяемая к пользовательским метрикам из пользовательских сеансов, идентична стратегии хранения данных, используемой для встроенных метрик временных рядов.