FESB
FESB - это полнофункциональное промежуточное программное обеспечение, которое предоставляет мощный набор инструментов и функциональных возможностей разработчикам и администраторам
Мониторинг FESB охватывает ключевые компоненты домен, менеджеры очередей, каналы, очереди, маршруты и т.д. Важно собирать информацию о структуре FESB и состоянии каждого компонента – это обеспечивает стабильность, производительность и отказоустойчивость системы.
Памир понимает структуру FESB и строит его сервисно-ресурсную модель (СРМ). СРМ FESB - это иерархическая структура, которая описывает компоненты FESB и их взаимосвязи. Она помогает систематизировать мониторинг, управление и планирование ресурсов.
Уровни модели СРМ
Тип сервера (кластер)
│
├── ✅ FESB (Экземпляр FESB)
│ │
│ ├── ✅ Группа доменов (domain_group)
│ │ │
│ │ └── ✅ Домен (domain)
│ │ │
│ │ └── ✅ СОПС (маршруты)
│ │
│ ├── ✅ Менеджер очередей (QM)
│ │ │
│ │ └── ✅ Очередь (Queue)
│ │
│ ├── ✅ Канал (Channel)
│ │
│ └──✅ Приёмник (Connector) – при необходимости
│
├── ✅ Расширенный менеджер очередей (QME)
│ │
│ └── ✅Расширенная очередь (extended_queue)
│
├── Прочие компоненты (при необходимости)
│
└── Физические ресурсы OS (CPU, RAM, Disk, Network)
✅ — отмечены уровни, включённые в шаблон мониторинга FESB. Ниже приведены описания уровней модели.
FESB Сервер
Атрибуты:
- Название: Имя FESB
- Наименование КЕ: Отображаемое имя на дашбордах/графе.
- IP адрес: IP-адрес сервера.
- Ревизия: Дополнительная информация о сборке.
- Версия продукта: Версия продукта.
- Версия JVM: Версия виртуальной машины Java .
- Путь установки: Корневая директория FESB (root_directory).
Группа доменов
Атрибуты:
- Название: Имя группы доменов
- Наименование КЕ: Отображаемое имя на дашбордах/графе.
Домен
Атрибуты:
- Название: Имя домена.
- Наименование КЕ: Отображаемое имя на дашбордах/графе.
- Статус домена: запущен/остановлен .
- Свойства Домена, Дополнительная конфигурация: Настройки домена
- Константы: Служебные переменные, доступные внутри маршрутов.
- GUID: Идентификатор домена.
Маршруты (СОПС)
Атрибуты:
- Название: Имя маршрута
- Состояние: Запущен/остановлен
- Процессы обработки: Процессы обработки сообщений
- Точки входа: Источники сообщений (коннекторы, очереди и т.д.).
- ID: Идентификатор СОПС.
- Ревизия: Версия или номер сборки маршрута.
Менеджер очередей
Атрибуты:
- Название: Имя брокера
- Наименование КЕ: Отображаемое имя на дашбордах/графе.
- Статус: Текущее состояние, например RUNNING/STOPPED.
- Настройки хранилища: Параметры хранения сообщений.
- ID: Уникальный идентификатор брокера.
- Настройки SSL: Сертификаты, шифрование.
- Ограничения: Параметры лимитов на очередь/обмен.
- Основные настройки: Конфигурация брокера.
- Пользователи: Список пользователей и прав доступа.
- Node Role: Роль узла в кластере (мастер, слейв и т.п.).
Очередь
Атрибуты:
- Название: Имя очереди.
- Наименование КЕ: Отображаемое имя на дашбордах/графе.
- Свойства очереди: Настройки очереди.
- Составная очередь: Использование композитной очереди.
Канал
Атрибуты:
- Название: Имя канала.
- Наименование КЕ: Отображаемое имя на дашбордах/графе.
- Адрес подключения: IP/хост.
- Порт: Порт соединения.
- Протокол: Протокол подключения.
- Дюплекс: Настройка duplex.
- Статус: Состояние канала .
- ID: Уникальный идентификатор.
Приёмник
Атрибуты:
- Название: Идентификатор коннектора .
- Наименование КЕ: Отображаемое имя на дашбордах/графе.
- Всего подключений: Текущее число соединений .
- Протокол: Протокол подключения.
- Порт: Порт подключение.
- Адрес обмена: Адрес, куда отправляются/принимаются сообщения.
- Адрес подключения: Конечная точка подключения к источнику.
Расширенный менеджер очередей
Атрибуты:
- Название: Имя брокера
- Наименование КЕ: Отображаемое имя на дашбордах/графе.
- Статус: Текущее состояние, например RUNNING/STOPPED.
- ID: Уникальный идентификатор
Расширенная очередь
Атрибуты:
- Название: Имя очереди.
- Наименование КЕ: Отображаемое имя на дашбордах/графе.
Пример СРМ, на котором видны взаимосвязи между сервером FESB, брокерами, очередями, доменами и маршрутами

СРМ как основа мониторинга
СРМ PostgreSQL задает иерархию объектов (Сервер FESB → Менеджер очередей → очередь и т.п.), для каждого из которых собираются метрики.
Механизм сбора метрик
Сбор метрик осуществляется JSON экспортером
Метрики по уровню CRM
Уровень СРМ: FESB Сервер
Примеры метрик:
memoryHeap,memoryUsed,memoryFree,memoryMax: объём, использование и лимит heap JVM.processorUsage: загрузка CPU.disk_total,disk_used,disk_free: дисковое пространство.uptime: непрерывное время работы.
Прогресс‑бары показывают текущую загрузку CPU, использование памяти и диска, а под ними линейные графики отражают динамику этих ресурсов во времени.

Уровень СРМ: Домен
Примеры метрик:
domainStatus: 1 — домен запущен.processedQty: обработано сообщений всеми маршрутами домена.failed: ошибки маршрутов домена.
Single Value сводят статус домена, количество СОПС, число ошибок и незавершённых транзакций.
Уровень СРМ: СОПС
Примеры метрик:
processedQty: обработано сообщений данным маршрутом.failed: необработанные ошибки.exchangesInflight: сообщений «на лету».route_state: 1 — Started, 0 — Stopped.
Линейные графики отображают: среднее время обработки, скорость обработки в сообщениях/с, среднее число сообщений за 5 минут и накопительное количество обработанных сообщений.

Уровень СРМ: Менеджер очередей
Примеры метрик:
qm_Status: RUNNING (1) / STOPPED (0).queueSize: суммарная глубина очередей брокера.activeConsumers: количество активных потребителей.persistentStoreSize: размер message‑store на диске.
Single Value показывают статус брокера, роль MASTER/SLAVE, количество очередей, отправителей и получателей, а также усреднённые счётчики сообщений и глубину очередей.

Уровень СРМ: Очередь
Примеры метрик:
queueSize,messageCount: текущая глубина.storeMessageSize: объём сообщений (байт).consumerCount,producerCount: активные клиенты.enqueueCount,dequeueCount: отправлено/изъято с момента запуска.expiredCount: устаревшие сообщения.inFlightCount,deliveringCount: сообщения в доставке.scheduledCount: отложенные сообщения.minMessageSize,maxMessageSize: минимальный/максимальный объём сообщения.durable,paused: флаги durability и паузы.
Верхняя панель содержит Single Value (глубина, скорости прироста/разбора, прогноз разбора и размеры сообщений). Ниже линейные графики визуализируют изменение размера очереди, количество отправителей и потребителей.

Уровень СРМ: Канал
Примеры метрик:
channel_status: RUNNING / FAILED.duplex: true — двусторонний обмен.start: время последнего запуска.
Single Value детализирует соединение: статус канала, ID, протокол, порт, удалённый адрес, duplex и другие параметры подключения.

Уровень СРМ: Расширенный брокер
Примеры метрик:
qme_Status: RUNNING / STOPPED.backup,active,replicaSynced: роли и состояние репликации.uptime: время работы процесса.
Single Value показывают статус внешнего брокера, его активность, роль backup/active, локальный доступ, синхронизацию с репликой и uptime.

Уровень СРМ: Расширенная очередь
Примеры метрик:
queueSize,messageCount: глубина.messagesAdded,messagesAcknowledged: добавлено/подтверждено.deliveringCount,deliveringSize,persistentSize: доставка и диск.consumerCount,producerCount: клиенты.durable,paused,autoDelete: флаги конфигурации.rate(messageCount[5m]): скорость прироста.
Single Value отражают ключевые показатели (размер, скорости, устаревшие/убитые сообщения, доставку, хранилище). Под ними — линейные графики динамики размера очереди, числа потребителей и добавленных сообщений за 5 минут.

Индикаторы здоровья
Длина очереди
Следит, чтобы глубина очереди не вышла из‑под контроля.
Уровень СРМ: Очередь (Queue)
Метрика: queueSize
Порог: > 5000 сообщений
Причины:
- Сообщения не обрабатываются (нет потребителей).
- Сбой в маршрутах или сервисах.
Прогнозное время разбора очереди
Оценивает, сколько времени займёт полная обработка накопленных сообщений.
Уровень СРМ: Очередь
Метрика: (queueSize / rate(dequeueCount[5m])) / 60 (мин)
Порог: > 10 минут
Причины:
- Низкая скорость обработки.
- Частичная недоступность потребителей.
Скорость прироста сообщений очереди
Предупреждает, если сообщения прибывают слишком быстро.
Уровень СРМ: Очередь
Метрика: rate(queueSize[5m]) (msg/s)
Порог: > 100 msg/s
Причины:
- Поток входящих сообщений превышает пропускную способность.
- «Шторм» событий от внешних систем.
Скорость разбора сообщений очереди
Фиксирует ситуации, когда очередь почти не обрабатывается.
Уровень СРМ: Очередь
Метрика: rate(dequeueCount[5m]) (msg/s)
Порог: < 1 msg/s при queueSize > 0
Причины:
- Потребители остановлены или «подвисли».
- Ошибка логики обработки.
Незавершённые транзакции
Показывает зависшие обмены в маршрутах.
Уровень СРМ: СОПС
Метрика: sops_failed
Порог: > 200 за 5 минут
Причины:
- Долгие операции с внешними сервисами.
- Исключения внутри маршрута.
Ошибки маршрутов
Отслеживает всплеск необработанных исключений.
Уровень СРМ: СОПС
Метрика: failed
Порог: > 10 за 5 минут
Причины:
- Некорректная логика интеграции.
- Недоступность внешнего ресурса.
Состояние СОПС
Позволяет мгновенно увидеть, что маршрут остановлен.
Уровень СРМ: СОПС
Метрика: sops_Status (значение routeState)
Порог: routeState ≠ Started
Причины:
- Ручная остановка на обслуживание.
- Критическая ошибка в процессе.
Состояние домена
Показывает доступность всех маршрутов домена.
Уровень СРМ: Домен
Метрика: domainStatus
Порог: active = false
Причины:
- Домен остановлен администратором.
- Ошибка конфигурации.
Состояние канала
Сигнализирует о неработающих network‑коннекторах.
Уровень СРМ: Канал
Метрика: channelStatus
Порог: status ≠ RUNNING
Причины:
- Сетевая ошибка или таймаут.
- Неверный удалённый адрес.
Состояние менеджера очередей
Отражает доступность брокера сообщений.
Уровень СРМ: Менеджер очередей (QM)
Метрика: qm_Status
Порог: status = STOPPED или STARTING
Причины:
- Процесс брокера остановлен.
- Проблемы с хранилищем сообщений.
Высокая загрузка памяти FESB
Предупреждает о риске OOM и деградации производительности.
Уровень СРМ: FESB сервер
Метрика: memoryUsed / memoryMax
Порог: > 0.85 (85 %)
Причины:
- Наплыв сообщений, удерживаемых в памяти.
- Утечки памяти в приложении.
Дашборды
Инсталляции FESB
Компоненты FESB в виде дерева, к каждому типу компонента привязан свой уникальный дашборд.

FESB's
Общая информация по всем FESB — индикаторы здоровья, очереди, маршруты, доступность.
Фильтр: отсутствует
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
consumerCount | Количество потребителей |
producerCount | Количество отправителей |
queueSize | Размер очереди |
storeMessageSize | Объём сообщений в очереди |
enqueueCount | Количество отправленных сообщений (непрерывно возрастающая величина) |
dequeueCount | Количество изъятых сообщений (непрерывно возрастающая величина) |
exchangesInflight | Незавершённые транзакции (непрерывно возрастающая величина) |
probe_success | Доступность |
sops_Status | Статус маршрутов |
qm_Status | Состояние брокера |
Правила расчёта и агрегации:
- Таблица «Доступность» — текущее значение метрики
probe_success. - Таблица «Внешние системы» — текущее значение метрики
probe_success. - Остановлено менеджеров — подсчёт количества значений метрики
qm_Status, не равныхRUNNING. - Остановлено СОПС — подсчёт количества значений метрики
sops_Status, не равныхStarted. - Незавершённые транзакции — суммарное значение метрики
exchangesInflight. - Средняя скорость обработки — вычисление разницы между начальным и конечным значением счётчика
dequeueCountв указанном окне (5m), а затем деление её на количество секунд в этом окне (300 секунд); вычисляется среднее значение по всем FESB. - Текущая глубина очередей — суммарное значение метрики
queueSize. - Таблица «Очереди» — текущие значения метрик
queueSize,enqueueCount,dequeueCount,producerCount,consumerCount,storeMessageSize. Агрегация по FESB: сумма.
FESB
Системные метрики FESB и информация по активным очередям.

Фильтр: адрес FESB
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
disk_used | Использованное место на диске |
disk_total | Общий размер диска |
disk_free | Свободное место на диске |
directories_used | Использование директории |
directories_total | Общий размер директории |
processors | Количество процессоров |
queueSize | Размер очереди |
memoryUsed | Используемая оперативная память |
memoryMax | Максимальный объём оперативной памяти |
memoryFree | Свободная оперативная память |
uptime | Время непрерывной работы |
processorUsage | Загрузка процессора |
Правила расчёта и агрегации:
- Uptime — текущее значение метрики
uptime. - Ядра ЦП — текущее значение метрики
processors. - Загрузка ЦП — текущее значение метрики
processorUsage. - График «Загрузка ЦП» — текущее значение метрики
processorUsage. Временной ряд; интервал задаётся в дашборде. - Используется ОЗУ — текущее значение метрики
memoryUsed. - Всего ОЗУ — текущее значение метрики
memoryMax. - Загрузка ОЗУ — отношение значения метрики
memoryUsedкmemoryMax, умноженное на 100 и округлённое до одного знака после запятой. - График «Загрузка ОЗУ» — текущее значение метрик
memoryUsedиmemoryMax. Временной ряд; интервал задаётся в дашборде. - Измерение директории — текущее значение метрик
directories_usedиdirectories_totalдля каждой отслеживаемой директории. - График «Директории» — текущее значение метрик
disk_usedиdisk_total. Временной ряд; интервал задаётся в дашборде. - Всего очередей — подсчёт количества значений метрики
queueSize. - Активных очередей — подсчёт количества значений метрики
queueSize> 0. - Сообщений в очередях — суммарное значение метрики
queueSize. - Размер очередей (сообщений) — текущее значение метрики
queueSize. Временной ряд; интервал задаётся в дашборде.
FESB Domain's
Информация по доменам, их состояние и сводка по маршрутам.
Фильтр: адрес FESB
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
domainStatus | Состояние домена |
sops_Status | Состояние маршрутов |
rate | Скорость обработки |
meanProcessingTime | Среднее время обработки |
processedQty | Количество потерянных сообщений (непрерывно возрастающая величина) |
failed | Количество ошибок (непрерывно возрастающая величина) |
exchangesInflight | Незавершённые транзакции (непрерывно возрастающая величина) |
Правила расчёта и агрегации:
- Количество доменов — подсчёт количества значений метрики
domainStatus. - Активных доменов — подсчёт количества значений метрики
domainStatus, равныхactive. - Количество СОПС — подсчёт количества значений метрики
sops_Status. - Активных СОПС — подсчёт количества значений метрики
sops_Status, равныхStarted. - Таблица «Домены» — суммарное значение метрик
processedQty,failed,exchangesInflight; среднее значение метрикrate,meanProcessingTime; текущее значение метрикиdomainStatus; подсчёт количества значений метрикиsops_Status. - График «Средняя скорость обработки» — среднее значение метрики
rate. Временной ряд; интервал задаётся в дашборде. - График «Среднее время обработки» — среднее значение метрики
meanProcessingTime. Временной ряд; интервал задаётся в дашборде.
FESB Domain
Информация по домену, его состояние и сводка по маршрутам.
Фильтр: адрес FESB, ID домена
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
processedQty | Количество потерянных сообщений (непрерывно возрастающая величина) |
failed | Количество ошибок (непрерывно возрастающая величина) |
exchangesInflight | Незавершённые транзакции (непрерывно возрастающая величина) |
rate | Скорость обработки |
meanProcessingTime | Среднее время обработки |
sops_Status | Состояние маршрутов |
domainStatus | Состояние домена |
Правила расчёта и агрегации:
- Состояние домена — текущее значение метрики
domainStatus. - Ошибки — суммарное значение метрики
failed. - Количество СОПС — подсчёт количества значений метрики
sops_Status. - Незавершённых транзакций — суммарное значение метрики
exchangesInflight. - Среднее время обработки — среднее значение метрики
meanProcessingTime. - Обработано сообщений — суммарное значение метрики
processedQty. - Средняя скорость обработки — среднее значение метрики
rate. - Таблица «СОПС» — текущие значения метрик
processedQty,failed,exchangesInflight,rate,meanProcessingTime,sops_Status. - График «Время обработки» — текущее значение метрики
meanProcessingTime. Временной ряд; интервал задаётся в дашборде. - График «Скорость обработки» — текущее значение метрики
rate. Временной ряд; интервал задаётся в дашборде.
FESB SOPS
Информация по маршрутам — состояние и обработка сообщений.
Фильтр: адрес FESB, ID домена, ID маршрута
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
processedQty | Количество потерянных сообщений (непрерывно возрастающая величина) |
failed | Количество ошибок (непрерывно возрастающая величина) |
failuresHandled | Обработанные ошибки |
exchangesInflight | Незавершённые транзакции (непрерывно возрастающая величина) |
sops_Status | Состояние маршрута |
rate | Скорость обработки |
meanProcessingTime | Среднее время обработки |
Правила расчёта и агрегации:
- Состояние — текущее значение метрики
sops_Status. - Незавершённые транзакции — текущее значение метрики
exchangesInflight. - Ошибки — текущее значение метрики
failed. - Обработанные ошибки — текущее значение метрики
failuresHandled. - График «Скорость обработки» — текущее значение метрики
rate. Временной ряд; интервал задаётся в дашборде. - График «Время обработки» — текущее значение метрики
meanProcessingTime. Временной ряд; интервал задаётся в дашборде.
FESB Domain Group
Информация по доменам, их состояние и сводка по маршрутам.
Фильтр: адрес FESB
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
processedQty | Количество потерянных сообщений (непрерывно возрастающая величина) |
failed | Количество ошибок (непрерывно возрастающая величина) |
exchangesInflight | Незавершённые транзакции (непрерывно возрастающая величина) |
rate | Скорость обработки |
meanProcessingTime | Среднее время обработки |
domainStatus | Состояние доменов |
sops_Status | Состояние маршрутов |
Правила расчёта и агрегации:
- Количество доменов — подсчёт количества значений метрики
domainStatus. - Активных доменов — подсчёт количества значений метрики
domainStatus, равныхactive. - Количество СОПС — подсчёт количества значений метрики
sops_Status. - Активных СОПС — подсчёт количества значений метрики
sops_Status, равныхStarted. - Таблица «Домены» — суммарное значение метрик
processedQty,failed,exchangesInflight; среднее значение метрикrate,meanProcessingTime; текущее значение метрикиdomainStatus; подсчёт количества значений метрикиsops_Status. - График «Средняя скорость обработки» — среднее значение метрики
rate. Временной ряд; интервал задаётся в дашборде. - График «Количество обработанных сообщений за 5 минут» — разница между начальным и конечным значением счётчика
processedQtyв окне 5m с последующим округлением до целого числа. Временной ряд; интервал задаётся в дашборде. - График «Количество обработанных сообщений» — текущее значение метрики
processedQtyс округлением до целого числа.
QM's
Информация по брокерам и сводка по их очередям.
Фильтр: адрес FESB
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
qm_Status | Состояние брокера |
queueSize | Размер очереди |
enqueueCount | Количество отправленных сообщений (непрерывно возрастающая величина) |
dequeueCount | Количество изъятых сообщений (непрерывно возрастающая величина) |
producerCount | Количество отправителей |
consumerCount | Количество потребителей |
storeMessageSize | Объём сообщений в очереди |
Правила расчёта и агрегации:
- Количество брокеров — подсчёт количества значений метрики
qm_Status. - Активных брокеров — подсчёт количества значений метрики
qm_Statusсо статусомRUNNING. - Количество очередей — подсчёт количества значений метрики
queueSize. - Таблица «Брокеры» — подсчёт количества значений метрики
queueSize; суммарное значение метрикqueueSize,enqueueCount,dequeueCount,producerCount,consumerCount,storeMessageSize; среднее значение метрикиstoreMessageSize; разницаdequeueCountза 5 минут ÷ 300 секунд; текущее значение метрикиqm_Status. - График «Количество сообщений» — суммарное значение метрики
queueSize. Временной ряд; интервал задаётся в дашборде.
QM
Информация по менеджеру очередей, сводка по его очередям и каналам.

Фильтр: адрес FESB, ID брокера
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
qm_Status | Состояние брокера |
queueSize | Размер очереди |
enqueueCount | Количество отправленных сообщений (непрерывно возрастающая величина) |
dequeueCount | Количество изъятых сообщений (непрерывно возрастающая величина) |
producerCount | Количество отправителей |
consumerCount | Количество получателей |
storeMessageSize | Средний размер сообщений в очереди |
minMessageSize | Минимальный размер сообщения |
maxMessageSize | Максимальный размер сообщения |
channel_status | Состояние каналов |
Правила расчёта и агрегации:
- Состояние — текущее значение лейбла
statusметрикиqm_Status. - Роль — текущее значение лейбла
slaveметрикиqm_Status. - Статус — текущее значение лейбла
stateметрикиqm_Status. - Отправителей — суммарное значение метрики
producerCount. - Получателей — суммарное значение метрики
consumerCount. - Отправленных сообщений — суммарное значение метрики
enqueueCount. - Количество очередей — подсчёт количества значений метрики
queueSize. - Изъятых сообщений — суммарное значение метрики
dequeueCount. - Средний размер сообщений в очереди — среднее значение метрики
storeMessageSize. - Средний размер очередей (сообщений) — среднее значение метрики
queueSize, округлённое до целого числа. - Таблица «Очереди» — текущие значения метрик
queueSize,enqueueCount,dequeueCount,producerCount,consumerCount,storeMessageSize,minMessageSize,maxMessageSize. - Таблица «Каналы» — текущее значение метрики
channel_status.
FESB Queue's
Общая информация по очередям и обработке сообщений.
Фильтр: адрес FESB, ID брокера
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
queueSize | Размер очереди |
enqueueCount | Количество отправленных сообщений (непрерывно возрастающая величина) |
dequeueCount | Количество изъятых сообщений (непрерывно возрастающая величина) |
producerCount | Количество отправителей |
consumerCount | Количество потребителей |
storeMessageSize | Размер сообщений в очереди |
minMessageSize | Минимальный размер сообщения |
maxMessageSize | Максимальный размер сообщения |
Правила расчёта и агрегации:
- Таблица «Очереди» — текущие значения метрик
queueSize,enqueueCount,dequeueCount,producerCount,consumerCount,storeMessageSize,minMessageSize,maxMessageSize. - Количество очередей — подсчёт количества значений метрики
queueSize. - Размер очередей — суммарное значение метрики
queueSize. - Отправлено сообщений — суммарное значение метрики
enqueueCount. - Изъято сообщений — суммарное значение метрики
dequeueCount.
FESB Queue
Информация по очереди и обработке сообщений.

Фильтр: адрес FESB, ID брокера, название очереди
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
queueSize | Размер очереди |
enqueueCount | Количество поступивших в очередь сообщений (непрерывно возрастающая величина) |
dequeueCount | Количество изъятых сообщений (непрерывно возрастающая величина) |
dispatchCount | Количество отправленных потребителям сообщений (непрерывно возрастающая величина) |
inFlightCount | Сообщения в ожидании отправки |
memoryUsageByteCount | Используемая память очереди |
storeMessageSize | Средний размер сообщения |
minMessageSize | Минимальный размер сообщения |
maxMessageSize | Максимальный размер сообщения |
producerCount | Количество отправителей |
consumerCount | Количество потребителей |
expiredCount | Количество потерянных сообщений (непрерывно возрастающая величина) |
Правила расчёта и агрегации:
- Размер очереди — текущее значение метрики
queueSize. - Скорость прироста сообщений в очереди — разница между начальным и конечным значением счётчика
queueSizeв окне 5m, делённая на 300 секунд. - Скорость разбора сообщений в очереди — разница между начальным и конечным значением счётчика
dequeueCountв окне 5m, делённая на 300 секунд. - Прогнозное время разбора очереди — отношение текущего значения метрики
queueSizeк разницеdequeueCountза 5m, делённой на 300 секунд; результат делится на 60. - Потерянных сообщений — текущее значение метрики
expiredCount. - Сообщений в ожидании отправки — текущее значение метрики
inFlightCount. - Максимальный размер сообщения — текущее значение метрики
maxMessageSize. - Минимальный размер сообщения — текущее значение метрики
minMessageSize. - Размер сообщений в очереди — текущее значение метрики
storeMessageSize. - График «Размер очереди» — текущее значение метрики
queueSize. Временной ряд; интервал задаётся в дашборде. Учитывается кластерная очередь. - График «Отправители» — текущее значение метрики
producerCount. Временной ряд; интервал задаётся в дашборде. Учитывается кластерная очередь. - График «Потребители» — текущее значение метрики
consumerCount. Временной ряд; интервал задаётся в дашборде. Учитывается кластерная очередь. - График «Отправлено в очередь за 5 минут» — разница
enqueueCountв окне 5m с округлением до целого числа. Временной ряд; интервал задаётся в дашборде. Учитывается кластерная очередь. - График «Изъято за 5 минут» — разница
dequeueCountв окне 5m с округлением до целого числа. Временной ряд; интервал задаётся в дашборде. Учитывается кластерная очередь. - График «Отправлено потребителям за 5 минут» — разница
dispatchCountв окне 5m с округлением до целого числа. Временной ряд; интервал задаётся в дашборде. Учитывается кластерная очередь. - График «Всего используется памяти» — текущее значение метрики
memoryUsageByteCount. Временной ряд; интервал задаётся в дашборде. Учитывается кластерная очередь.
FESB Channel's
Общая информация по каналам.

Фильтр: адрес FESB, ID брокера
FESB Channel
Информация по каналу и его состояние.
Фильтр: адрес FESB, ID брокера, название канала
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
channel_status | Состояние канала |
Правила расчёта и агрегации:
- Состояние — текущее значение метрики
channel_status.
Файлы конфигурации
- CI Types (TKE) — Конфигурационный файл, описывающий TКЕ.
- Шаблоны FESB — Шаблон метрик и индикаторов здоровья.
- Дашборды — Файл конфигурации дашбордов.
- Экспортер — Файл настроек экспортёров для сбора метрик FESB.
Исторический мониторинг JSON/XML интеграционных взаимодействий
Расчет входящего потока и объема данных
Исходные данные:
- Количество СОПС: 3 000
- Сообщений на СОПС в час: 100
- Событий на одно сообщение: 2 (начало, конец)
- Средний размер тела сообщения: 10 КБ
- Средний размер метаданных: 1 КБ
- Размер одного трейс-события: 10 КБ + 1 КБ = 11 КБ
Расчеты:
-
Общее количество событий в час:
3 000 СОПС * 100 сообщ./час * 2 события/сообщ. = 600 000 событий/час -
Общий объем данных в час:
600 000 событий/час * 11 КБ/событие = 6 600 000 КБ/час ≈ 6.3 ГБ/час -
Количество событий в секунду (RPS):
600 000 / 3600 сек = ~167 событий/сек -
Входящий поток данных (Throughput):
6.3 ГБ/час / 3600 сек/час ≈ 1.8 МБ/сек -
Объем данных в сутки:
6.3 ГБ/час * 24 часа ≈ 151 ГБ/сутки
Итоговые объемы для хранения (RAW - без учета сжатия):
- За 1 неделю:
151 ГБ/сутки * 7 дней ≈ 1.06 ТБ - За 1 месяц (30 дней):
151 ГБ/сутки * 30 дней ≈ 4.5 ТБ - За 1 год (365 дней):
151 ГБ/сутки * 365 дней ≈ 55 ТБ
Расчет требований к Kafka
Используем те же допущения: хранение 3 дня, репликация x3.
| Параметр | Расчет | Требования |
|---|---|---|
| Входящий поток | 1.8 МБ/сек | Очень умеренная нагрузка. |
| Дисковое пространство | 151 ГБ/день * 3 дня * 3 реплики ≈ 1.4 ТБ | Требования к дискам невысокие. Подойдут стандартные SSD. |
| CPU/RAM | С такой нагрузкой легко справится стандартный кластер из 3-х брокеров с ресурсами (например, 4 vCPU, 16 ГБ RAM на каждый). Система будет работать с большим запасом. | |
| Кол-во партиций | RPS в ~167 не является высоким. Для начала будет достаточно 6-12 партиций в топике для обеспечения параллелизма потребителей. |
Расчет требований к ClickHouse
Используем допущение о сжатии 5x. Для JSON/XML с большим количеством текста и повторяющейся структурой это вполне достижимо.
| Период хранения | Расчет | Требования к хранилищу |
|---|---|---|
| 1 неделя | 1.06 ТБ / 5 ≈ 212 ГБ | Минимальные. |
| 1 месяц | 4.5 ТБ / 5 ≈ 900 ГБ | Вполне умеренно. |
| 1 год | 55 ТБ / 5 ≈ 11 ТБ | Это стандартный объем для одного сервера или небольшого кластера ClickHouse. Потребуются быстрые диски (NVMe) для хорошей производительности запросов. |
4.2 CPU и RAM
| Параметр | Оценка | Требования |
|---|---|---|
| Нагрузка на запись | 1.8 МБ/сек — это очень низкая нагрузка для ClickHouse. Система может обрабатывать сотни МБ/сек. | С записью справится даже один сервер. Кластер нужен в основном для отказоустойчивости и распараллеливания аналитических запросов. |
| CPU (ориентировочно) | Для кластера из 2-3 нод будет достаточно 8-16 vCPU на ноду. Суммарно 16-48 vCPU. | Это позволит одновременно и эффективно записывать данные, и выполнять сложные аналитические запросы от пользователей. |
| RAM (ориентировочно) | 32-64 ГБ на ноду. RAM в ClickHouse используется для словарей, кэшей и выполнения запросов. | Этого объема будет достаточно для быстрой работы с данными объемом 11 ТБ. |