Перейти к основному содержимому
Руководство администратора
How To статьи
Установка и настройка
Компоненты
Руководство пользователя
Начало работы

Метрики Run Time

Метрики Runtime фиксируют фактическое исполнение потоков в Bercut ESB: количество вызовов, статусы обработки, длительность операций, активации и деактивации, ошибки и повторные доставки. Позволяют оценивать реальную нагрузку на ESB Core, стабильность работы потоков и выявлять узкие места в обработке сообщений.

Набор лейблов для всех метрик Run Time

Набор лейблов для всех метрик Run Time обеспечивает единообразную идентификацию компонентов в мониторинге, сегментацию по средам и инфраструктуре, а также упрощает настройку алертов.

ЛейблОписаниеПример значения
instanceИмя виртуальной машины, на которой располагается сервис. Позволяет локализовать метрики и проблемы на уровне инфраструктуры.vm-esb-dt-03
environmentИмя окружения ESB. Используется для разделения продуктивных и тестовых сред (dev, stage, prod и т. п.). Значение берётся из переменной ENVIRONMENT_NAME.main, dev1, dev2
groupИмя функциональной группы, к которой относится контейнер. Отражает принадлежность к слою архитектуры. Задаётся жёстко (hard‑coded).ESB-RUNTIME
containerИмя Docker‑контейнера. Полезно при наличии нескольких контейнеров на одной виртуальной машине - позволяет сегментировать метрики по экземплярам.esb-config-server-v2
serviceЛогическое имя сервиса ESB. Жёстко задаётся в конфигурации для однозначной идентификации компонента платформы.ESB-CONFIG-SERVER, ESB-CORE, ESB-STATE-COLLECTOR, ESB-FILE-MANAGER, ESB-LICENSE-MANAGER, ESB-CONNECTION-MANAGER

Configuration Service

Стандартные метрики OOB

Метрики Spring

Позволяют контролировать работу веб‑слоя, состояние эндпоинтов и стабильность приложения: отслеживать вызовы контроллеров, HTTP‑коды и задержки обработки запросов. Подробнее читайте в официальной документации Spring Boot Actuator.

JDBC Connection Pool метрики (на примере HikariCP)

Метрики критически важны для стабильности State Collector, Configuration Server и других компонентов, взаимодействующих с реляционной СУБД: они позволяют отслеживать заполненность пула, количество активных и простаивающих соединений, а также время ожидания выделения соединения. Подробнее читайте в официальной документации HikariCP Dropwizard Metrics wiki.

JVM метрики

Отражают состояние рантайма: потребление памяти, паузы GC, загрузку CPU и состояние потоков - позволяют выявлять утечки памяти, проблемы масштабирования и блокировки, влияющие на пропускную способность потоков. Подробнее читайте в официальной документации Oracle

Кастомные метрики

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

МетрикаОписаниеТипЛейблы
configuration_service_route_activation_countЧисло запусков активации потока. Включает успешные активации и случаи с ошибками; детализируется по статусу, идентификатору и имени потока, а также домену.Счётчик (count)
configuration_service_route_deactivation_countЧисло запусков деактивации потока. Фиксирует операции отключения версий потоков с разбивкой по статусу (успех/ошибка), потоку и домену.Счётчик (count)

Для кастомных метрик к стандартному набору лейблов для кастомных метрик добавляется свой набор лейблов:

ЛейблОписаниеПример значения
statusСтатус операции: успех или ошибка. Используется для расчёта доли ошибок, построения rate‑алертов и быстрой фильтрации проблемных событий.success, error
flow_idУникальный идентификатор интеграционного потока. Ключевой лейбл для точечной диагностики: по нему можно собрать полную картину по одному потоку (активации, latency, ошибки).flow-123456
flow_nameЧеловекочитаемое имя потока. Используется в дашбордах и отчётах .OrderToERP_v2
domain_idИдентификатор домена, к которому принадлежит поток.dom-grom

State Collector

Стандартные метрики OOB

  • HTTP Connection Pool метрики. Эти метрики критически важны для стабильности ключевых компонентов Bercut ESB - State Collector, Configuration Server, License Manager и других сервисов, активно взаимодействующих с реляционной СУБД. Они позволяют вовремя выявлять узкие места при росте нагрузки на операции чтения и записи конфигураций, а также предотвращать исчерпание лимита соединений.

  • Метрики Spring. Подробнее читайте в официальной документации Spring Boot Actuator.

  • JDBC Connection Pool метрики (на примере HikariCP). Подробнее читайте в официальной документации HikariCP Dropwizard Metrics wiki.

Кастомные метрики

В таблице ниже представлены метрики, которые позволяют контролировать работу State Collector: отслеживать объём загружаемых и обновляемых объектов, длительность операций опроса и применения конфигурации, а также статусы выполнения. Это полезно для случаев, когда нужно выявлять задержки при синхронизации состояния и оценивать нагрузку на компонент.

МетрикаОписаниеТипЛейблы
state_collector_polled_objects_totalСуммарное количество загруженных объектов в результате опроса источников данных (Kong, Configuration Server).Счётчик (count)
  • Стандартный набор лейблов
  • type (services, flows, upstreams, targets, plugins, config_item)
  • instance_ip - IP‑адрес инстанса, на котором выполняется процесс State Collector. Значение берётся из переменной ESB_STATE_COLLECTOR_HOST.
state_collector_config_objects_added_totalСуммарное количество созданных объектов в базе. Заполняется после завершения всех обновлений - исключает случаи с fallback (где статус операции - retry).Счётчик (count)
state_collector_config_objects_updated_totalСуммарное количество обновлённых объектов в базе. Заполняется после завершения всех обновлений - исключает случаи с fallback (где статус операции - retry).Счётчик (count)
state_collector_poll_duration_seconds_totalСуммарное количество секунд, затраченных на загрузку объектов.Счётчик (count)
state_collector_operation_status_totalСуммарное количество статусов операций. Статус retry доступен только для типа applying_configuration и заменяет статус failure. Заполняется после завершения всех обновлений для исключения учёта fallback‑случаев.Счётчик (count)
state_collector_operation_totalСуммарное количество операций.Счётчик (count)
state_collector_operation_duration_totalСуммарное количество секунд, затраченных на все операции.Счётчик (count)

Connection Manager

Стандартные метрики OOB

  • Метрики OpenBao Vault. Используется как централизованное хранилище секретов (пароли, токены, сертификаты) для компонентов шины. Они позволяют отслеживать активность кластера, нагрузку на сервис, состояние памяти и количество активных доступов. Подробнее читайте в официальной документации OpenBao.

  • Метрики Spring. Подробнее читайте в официальной документации Spring Boot Actuator.

  • JDBC Connection Pool метрики (на примере HikariCP). Подробнее читайте в официальной документации HikariCP Dropwizard Metrics wiki.

Кастомные метрики

В таблице ниже представлены метрики, которые позволяют отслеживать операции и состояние Connection Manager - контролировать создание и изменение объектов, актуальное количество сущностей в системе, работу с версиями роутов и взаимодействие с хранилищем секретов.

МетрикаОписаниеТипЛейблы
connection_manager_objects_added_totalЧисло созданных объектов для каждого типа.Count
connection_manager_objects_updated_totalЧисло изменённых объектов для каждого типа.Count
connection_manager_objects_totalТекущее количество объектов в системе, разбитое по типу.Gauge
connection_manager_route_versions_totalЧисло соединений с конкретными версиями роутов.Gauge
connection_manager_secret_storage_requests_totalОбщее число запросов к хранилищу секретов, детализированное по типу операции.Gauge
connection_manager_secret_storage_requests_time_totalСуммарное время, затраченное на запросы к хранилищу секретов, с разбивкой по типу операции.Gauge

Core Service

Стандартные метрики OOB

  • Метрики Spring. Подробнее читайте в официальной документации Spring Boot Actuator.

  • JDBC Connection Pool метрики (на примере HikariCP). Подробнее читайте в официальной документации HikariCP Dropwizard Metrics wiki.

  • JVM метрики. Подробнее читайте в официальной документации Oracle

  • Метрики Apache Camel. Используется как движок маршрутизации и интеграции - он обрабатывает потоки данных между сервисами, внешними системами и очередями (Kafka, RabbitMQ и др.). Метрики Camel позволяют отслеживать пропускную способность маршрутов, число сбоев, задержки обработки сообщений, а также нагрузку на пулы потоков. Подробнее читайте в официальной документации Apache Camel Metrics Component.

Кастомные метрики

В таблице ниже представлены метрики, которые обеспечивают контроль работы ESB Core: позволяют отслеживать загрузку артефактов, динамику изменений и активаций потоков, длительность операций, а также нагрузку на исполняемые маршруты.

МетрикаОписаниеТипЛейблы
core_downloaded_files_totalСуммарное количество загруженных файлов с разбивкой по имени, формату и статусу загрузки (успешно/ошибка). Позволяет отслеживать успешность и частоту скачивания артефактов.Count
  • file_name
  • file_format (json, xsd и др.)
  • download_status (success, failure)
core_files_totalТекущее количество файлов, выбранных для конкретных потоков. Позволяет контролировать соответствие файлов активным маршрутам и выявлять расхождения между конфигурацией и загруженными артефактами.Gauge
  • file_name
  • file_format (json, xsd и др.)
  • flow_id (уникальный идентификатор роута в run time)
core_files_download_duration_seconds_totalСуммарная длительность (в секундах) операций загрузки файлов. Используется для оценки производительности скачивания и выявления медленных источников или сетевых проблем.Count
  • file_name
  • file_format (json, xsd и др.)
core_route_update_process_countКоличество запросов на изменение конфигурации потоков, поступающих из Configuration Service. Позволяет отслеживать интенсивность обновлений и выявлять аномальные всплески правок.Countstatus (success, error)
core_route_update_process_durationРаспределение времени, затраченного на процесс обновления конфигурации потоков. Позволяет оценить стабильность и скорость применения изменений, выявить длительные операции.Histogramstatus (success, error)
core_route_activation_countЧисло запусков активации потока с фиксацией результата. Используется для контроля динамики включения потоков и анализа ошибок при активации.Count
  • status (success, error)
  • flow_id
  • flow_name
  • domain_id
core_route_deactivation_countЧисло запусков деактивации потока с фиксацией результата. Позволяет отслеживать частоту отключения потоков и причины ошибок.Count
  • status (success, error)
  • flow_id
  • flow_name
  • domain_id
core_route_activation_duration_sec_sumСуммарное время, затраченное на активацию потока (от получения из очереди до отправки в контекст). Позволяет выявлять узкие места в процессе включения потоков.Histogram
  • status (success, error)
  • flow_id
  • flow_name
  • domain_id
core_route_deactivation_duration_sec_sumСуммарное время, затраченное на деактивацию потока. Используется для анализа длительности отключения потоков и поиска задержек.Histogram
  • status (success, error)
  • flow_id
  • flow_name
  • domain_id
core_route_invoke_count_totalСуммарное количество вызовов потока извне с финальными статусами исполнения. Учитывает только потоки, не начинающиеся с DIRECT. Позволяет оценивать нагрузку на потоки и стабильность их работы.Count
  • status (success, error)
  • flow_id
  • flow_name
  • domain_id