Мониторинг бизнес-операций

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

Возможности мониторинга бизнес-операций от Proto Observability

Платформа автоматически определяет ключевые бизнес-операции (оплата, добавление товара в корзину, вход/выход и многие другие) и анализирует их исполнение. Также имеется возможность обозначить любую необходимую транзакцию в качестве ключевой бизнес-операции. Посмотреть список ключевых бизнес-операций возможно в модуле APM в разделе Транзакции.

../images/195-apm-key-business-transaction.png

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

../images/195-kbt-dashboard-main.png

  • На вкладке Обзор доступны следующие данные:

    • Название транзакции
    • Операция (имя эндпоинта)
    • Сервис транзакции - с возможностью перехода по ссылке к дашборду этого сервиса
    • Длительность исполнения транзакции
  • Схема бизнес-транзакции – автоматически генерируется, показывает все сервисы и инфраструктурные компоненты, участвующие в выполнении операции.

    Цветовой индикацией на схеме выделяются проблемные компоненты.

    Для каждой связи выводятся необходимые для анализа показатели:

    • Количество вызовов в минуту
    • Процент ошибок
    • Время отклика
    • Тип вызова

    Виджет Схема доступен в 3 вариантах отображения и с возможностью широкоэкранного просмотра.

  • Скоринг транзакции – платформа автоматически группирует вызовы бизнес-операции в 4 группы и по каждой показывает количество и процентное соотношение:

    • Error - вызовы операции с ошибками
    • Normal - вызовы без ошибок и с нормальным временем исполнения
    • Slow - вызовы, исполняющиеся в три раза больше стандартного отклонения за последние 2 часа (> 3 sigma < 4 sigma).
    • Very Slow - вызовы, исполняющиеся в 4 раза больше стандартного отклонения за последние 2 часа (> 4 sigma)
  • Проблемы, актуальные сейчас.

  • Виджеты Вызовы, Длительность и Ошибки – показывают как числовые значения по данным метрикам, так и визуализацию в виде графиков.

  • Вкладка Ошибки.

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

  • Вкладка AIOPS.

    Здесь представлены топ проблем бизнес-операции, MTTR анализ, графики с визуализацией распредления аномалий и трендов во времени, анализ алертов по критичности и их история.

  • Вкладка Трейсы.

    В данном разделе выводятся все трейсы бизнес-операции и их детальная аналитика.

  • Вкладка Связи.

    Представлен анализ связей и вызовов в рамках бизнес-операции.

Обозначение транзакции в качестве ключевой бизнес-операции

Вы можете обозначить любую необходимую транзакцию как ключевую в удобном конструкторе в UI Proto Observability. Конструктор доступен в модуле APM в разделе Настройки APM.

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

1-й вариант. Создание общего правила обнаружения ключевой бизнес-операции для всех сервисов через добавление регулярного выражения.

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

  1. APM > Настройки APM > Вкладка Правила обнаружения КБТ.

  2. Кликните на кнопку Добавить.

  3. В открывшемся окне Создание правила обнаружения бизнес-транзакций, в поле Регулярное выражение введите выражение. Примеры выражения – pay, cart, login, logout и тп.

  4. Укажите приоритет правила. Платформа обрабатывает транзакции в соответсвии с правилами согласно приоритету правил – правило с более высоким приоритетом применится к подходящей транзакции, а правило с низким приоритетом не будут применены к этой же транзакции в случае, если транзакция удовлетворяет одновременно двум или более правилам.

    • Например, у вас добавлено 2 правила – одно с регулярным выражением pay, второе – с payment. Если у правила с выражением payment установлен более высокий приоритет чем у правила с выражением pay, в таком случае применется правило с более высоким приоритетом.
  5. Протестируйте правило кликнув на кнопку Тестировать шаблон. Платформа выведет список транзакций соответсвующих правилу и названия сервисов, в которых данная транзакция встречается. Для сохранения правила кликните на кнопку Сохранить.

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

Для этого напротив выбранного сервиса с транзакцией кликните на кнопку Добавить в транзакции. В открывшемся окне введите необходимое название бизнес-операции и нажмите на кнопку Ok.

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

2-ой вариант. Добавление ключевой бизнес-операции для конкретного сервиса.

  • Быстрое добавление из деталей спана (кнопка сделать ключевой) — откроется форма создания транзакции с предзаполненными полями выбранного сервиса и эндпоинта.

    kbt-alerting

  • Создание из меню: APM > Настройки APM > Вкладка Ключевые бизнес-транзакции.

    1. APM > Настройки APM > Вкладка Ключевые бизнес-транзакции.

    2. Кликните на кнопку Добавить.

    3. В открывшемся окне Создание транзакции:

      • В поле Сервис введите название сервиса для которого вы хотите отслеживать бизнес-транзакцию.
      • В поле Эндпоинт – укажите название эндпоинта (скопировать имя необходимого эндпоинта можно с дашборда сервиса на вкладке Эндпоинты раздела APM).
      • В поле Имя транзакции – введите название для вашей ключевой бизнес-операции.

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

    4. Укажите Статус отслеживания ключевой бизнес-операции – отслеживание может быть как включено, так и выключено (на случай если захотите позднее применить отсеживание бизнес-транзакции). Кликните на кнопку Сохранить.

Посмотреть список всех добавленных бизнес-транзакций и правил их обнаружения можно на соответсвующих вкладках раздела Настройки APM > Ключевые бизнес-транзакции и Правила обнаружения КБТ соответсвенно. Данные в обоих списках возможно фильтровать, производить по ним поиск и различные операции (редактирования, просмотра, удаления и тп.).

Алертинг по бизнес-операциям

Для бизнес-транзакций автоматически высчитывается базовая линия ключевых метрик транзакции, автоматически настраиваются правила алертинга на основе отклонения от базовых линий (выявление аномалий), а также включаются преднастроенные правила алертинга по статическим порогам.

kbt-alerting

Обогащение транзакций бизнес-контекстом

Для мониторинга асинхронных бизнес‑процессов можно автоматически извлекать бизнес‑контекст из тегов трейсов и сохранять его как новые теги. Это настраивается в UI через правила извлечения данных.

Путь в UI: Бизнес‑аналитика → Настройки → Правила извлечения.

Создание правила извлечения:

  1. Откройте раздел Правила извлечения и нажмите Создать правило.
  2. Заполните поля:
    • Название правила и Описание — для удобства поиска и понимания назначения.
    • Тег трейса — ключ тега, из которого будет извлекаться значение (например, http.url, db.statement, peer.service).
    • Регулярное выражение — должно содержать захватывающую группу. Значение первой группы будет сохранено как извлеченное.
    • Имя извлеченного поля — имя нового тега, куда будет записан результат (например, business.order_id).
    • Сервисы — список сервисов, к которым применяется правило. Если оставить пустым, правило действует для всех сервисов.
    • Статус — включено/выключено.
  3. (Опционально) Нажмите Протестировать регулярное выражение, чтобы проверить правило на реальных трейсах за последние 3 часа. UI покажет до 10 примеров и извлеченные значения.
  4. Нажмите Сохранить.

Как работает обработка:

  • Применяются только активные правила (Статус = активно).
  • Если в спане есть указанный тег и он не пустой, система применяет регулярное выражение.
  • Если есть совпадение, значение первой захватывающей группы записывается в новый тег с именем из поля Имя извлеченного поля.
  • Если список сервисов не задан — правило применяется ко всем сервисам.