на базе Grail
Чтобы начать работу с бизнес-мероприятиями, сначала необходимо определить объем данных, которые вы хотите собирать. Используемый вами подход зависит от источника деловых событий.
Есть три источника деловых событий.
- ЕдиныйАгент Настройте Ключ-АСТРОМ, чтобы добавить правила захвата, триггеры, поля данных и многое другое.
- Веб и мобильный RUM Получайте информацию о бизнес-событиях RUM, используя специальный метод RUM JavaScript API, ЕдиныйАгент для мобильных устройств или OpenKit.
- Внешние источники Настройте внешние бизнес- или ИТ-системы для отправки бизнес-событий в формате JSON в API бизнес-событий (конечная точка REST) .
Получайте деловые мероприятия через ЕдиныйАгент
ЕдиныйАгент версии 1.253+
Чтобы фиксировать бизнес-события с помощью ЕдиныйАгент , необходимо сначала включить эту функцию.
- Откройте «Настройки» > «Настройки» > «Функции ЕдиногоАгента » .
- Включите функцию бизнес-мероприятий ЕдиногоАгента для технологий, подходящих для вашей среды. Вам необходимо перезапустить процесс приложения, прежде чем вы сможете фиксировать бизнес-события из процесса.
Для конфигурации требуется одно или несколько правил отслеживания, состоящих из триггеров , обязательных полей данных и необязательных полей данных событий .
В таблице ниже приведены примеры обязательных ( event.type
, event.provider
) и необязательных ( event.category
) полей данных.
Поле | Тип | Описание | Примеры |
---|---|---|---|
event.category
|
string | Стандартная категоризация на основе значимости события в соответствии со стандартом управления событиями ITIL. | Availability
|
event.type
|
string | Уникальный идентификатор типа данного события. | buy-asset , sell-asset ,login
|
event.provider
|
string | Источник события, например имя компонента или системы, вызвавшей событие. | OneAgent , easyTrade.com ,easyTravel.com
|
Поддерживаемые технологии
Поддерживаемые технологии извлечения данных из входящих HTTP-запросов перечислены в таблице ниже.
Агент | Функция ЕлиногоАгента | Мин. версия | Поддерживаемые технологии | Мин. версия | Сжатое тело | Все тело | Мин. версия | Сжатое тело | Все тело |
---|---|---|---|---|---|---|---|---|---|
Включение (захват событий) | приложение/json (захват полезной нагрузки) | Заголовок: XML (захват полезной нагрузки)1 | |||||||
Веб сервер | Веб-серверные бизнес-мероприятия | 1,253 |
|
1,253 | 1,275 | ||||
.NET | Бизнес-мероприятия .NET | 1,253 | 1,253 | н/д | |||||
Java | Бизнес-мероприятия по Java | 1,253 | Сервлет
|
1,253 | 1,275 | ||||
Node.js | Бизнес-мероприятия Node.js | 1,259 | 1,259 | н/д | |||||
Голанг | Деловые мероприятия Go | 1,263 | 1,263 | (1,265) | н/д |
1
По умолчанию для захвата XML поддерживаются следующие типы контента: text/xml
и application/xml
.
2
Поддержка Tomcat 10—ЕдиныйАгент версии 1.263+и требуется функция Java Servlet 5.0 ЕдиныйАгент (в «Настройки» > «Настройки» > «Функции ЕдиногоАгента» ).
Настройка источников бизнес-событий в ЕдиномАгенте
ЕдиныйАгент версии 1.253+
Настройка источников бизнес-событий в ЕдиномАгенте
- Откройте «Настройки» > «Бизнес-аналитика» > «Источники бизнес-событий ЕдиногоАгента» .
- Выберите Добавить новое правило захвата и назовите свое правило.
- Выберите Добавить триггер , чтобы определить условие, которое инициирует бизнес-событие. Определите источник данных для вашего триггера, например тело запроса , путь или заголовок HTTP . Затем выберите Оператор и определите Значение . Это позволяет сопоставлять содержимое, полученное из источника, со значением, которое вы определяете. Когда ЕдиныйАгент соответствует триггеру, генерируется бизнес-событие.
- В сводке отображается все триггерное правило (например,
Request - Path starts with '/api/trade/BuyAssets
). - По умолчанию значение не чувствительно к регистру. Включите параметр «Учитывать регистр» , если вы хотите, чтобы триггер учитывал регистр источника.
- Триггеры связаны
AND
логикой внутри правила; если вы установите несколько триггеров, все они должны быть выполнены, чтобы зафиксировать деловое событие. - Первое правило сопоставления выполняется для каждого ЕдиногоАгента для каждого запроса.
- Мы рекомендуем вам установить определенные триггеры. Если триггер слишком общий и приводит к нескольким идентичным совпадениям правил, вы получите несколько бизнес-событий. Например, если у вас есть условие триггера
contains api
и этот терминapi
используется во многих ваших приложениях, данные могут в конечном итоге быть захвачены там, где их не должно быть. Не создавайте триггеры, где значение просто/
; это может привести к перегрузке и завершению работы среды приложения.
- В сводке отображается все триггерное правило (например,
- Выберите источник и значение поставщика событий . Здесь описывается источник события, например
www.easytrade.com
. Источником данных для этого поля может быть предоставленное вами фиксированное значение или оно может быть извлечено из события. - Выберите источник и значение типа события . Здесь описывается тип события, отправляемого поставщиком событий, например
Asset purchase
. - необязательно Выберите источник и значение категории события , чтобы добавить к событию полезный контекст (например, добавьте название фондовой биржи, например
NASDAQ
). На этом этапе завершается настройка бизнес-события, которое будет генерироваться каждый раз при совпадении критериев триггера. Этого может быть достаточно, если все, что вам нужно, — это подсчитать количество совпадающих событий (например, чтобы ответить на вопрос, сколько покупок активов было совершено). Однако в большинстве случаев вам потребуется добавить атрибуты событий для более детального анализа (описано на шаге ниже). Атрибуты — это поля данных, извлеченные из полезных данных события в формате JSON или XML. - Выберите Добавить поле данных в данных о событии . Укажите имя поля, а затем укажите источник данных и значение из полезных данных JSON или XML. Здесь описывается пара атрибут-значение, которая будет связана с событием, например
accountId
,amount
,instrumentId
илиprice
. Добавление таких пар может помочь вам ответить на более сложные вопросы, например, сколько учетных записей приобрели определенный актив, какие активы покупаются чаще всего или какие учетные записи совершают самые крупные покупки активов. Пример JSON-файла запроса на покупку актива - Выберите Сохранить изменения .
- Убедитесь, что для правила установлено значение «Включено» .
Пример извлечения данных из JSON
В следующей таблице показаны дополнительные примеры извлечения данных из входящих полезных данных JSON
Пример JSON-файла полезных данных запроса для ЕдиногоАгента
- URL-адрес запроса —
example.dynatrace.com/api?action=addItems
- Заголовки запросов
Accept
—*/*
Accept-Encoding
—gzip, deflate
Accept-Language
—en-US,en;q=0.9
Connection
—keep-alive
Content-Length
—64
Content-Type
—application/json
- Запросить полезные данные
Имя поля | Источник | Путь | Результат | Описание |
---|---|---|---|---|
ID транзакции | Запрос – Тело | ID транзакции | 1748-2b59-5c78-9c75-f500-274a-88f5-7965 | Захватывает атрибут верхнего уровня |
имя пользователя | Запрос – Тело | user.имя_пользователя | Джон Доу | Захватывает вложенный атрибут |
ценаOfItems | Запрос – Тело | предметы.0.цена | 175,99 | Захватывает атрибут первого элемента массива |
Последний тег | Запрос – Тело | заказ.теги.-1 | Винтаж | Захватывает последний элемент массива |
Предпоследний тег | Запрос – Тело | заказ.теги.-2 | Классический | Захватывает предпоследний элемент массива |
Все тело | Запрос – Тело | * | Все тело как струна | Захватывает все тело запроса |
Тип содержимого | Запрос – HTTP-заголовок | Тип содержимого | приложение/json | Захватывает определенный заголовок запроса |
Действие | Запрос – параметры строки запроса | действие | добавить элементы | Фиксирует определенный параметр строки запроса. |
Пример извлечения данных из XML
Извлечение данных из полезных данных XML работает с тем же синтаксисом, что и для JSON.
Имя поля | Источник | Путь | Результат | Описание |
---|---|---|---|---|
Идентификатор запроса выхода из системы | Запрос – Тело | ВыходЗапрос.@id | 102030AF | Захватывает атрибут тега XML |
идентификатор аккаунта | Запрос – Тело | LogoutRequest.accountId | 100 | Захватывает значение тега XML |
Получайте деловые мероприятия от RUM
Деловые мероприятия доступны для всех технологий Ключ-АСТРОМ RUM (веб-RUM, мобильный RUM и OpenKit). Деловые мероприятия RUM можно получить, используя специальный метод RUM JavaScript, ЕдиныйАгент для мобильных устройств или OpenKit.