Релиз 200 Proto Observability Platform

Масштабное весеннее обновление! Главными темами релиза стали обновленная ролевая модель доступа (RBAC) с разграничением по ресурсам и сервисам, инструмент работы с логами Logs Explorer, управление уровнем обслуживания (SLO), ресурсно-сервисная модель (РСМ), дашборды внешних HTTP-сервисов и очередей сообщений.

Дата выпуска: 21.04.2026

Приводим краткое описание нового функционала доступного с этим релизом.

Новые возможности 🎉

✨ Ролевая модель доступа (RBAC) с разграничением по ресурсам и сервисам

Теперь Proto Observability Platform позволяет гранулировано настраивать RBAC не только на основе ролей, но и на уровне доступа к отдельным сервисам и ресурсам.

Новый раздел Роли и доступ содержит управление ролями, правами, пользователями, привязкой внешних групп и журналом аудита.

./images/200-rbac-admin.png

Краткое описание возможностей:

Права уровня сервисов. Права можно выдавать не только на тип ресурса (например, «все Ключевые Бизнес Транзакции»), но и на конкретные сервисы.

Фильтрация телеметрии по сервисам. Пользователь видит только те данные, которые соответствуют его списку разрешённых сервисов. Фильтрация автоматически применяется к:

  • запросам PromQL (виджеты метрик, браузер метрик, страницы алертов);
  • запросам LogsQL (Logs Explorer и виджеты данных на основе логов);
  • запросам API (дашборды, данные бизнес-аналитики, просмотр трейсов).

Привязка внешних групп (LDAP/OIDC). Внешние группы Active Directory / LDAP и любого OIDC-провайдера можно сопоставить с ролями платформы. Имя claim-а групп в токене OIDC настраивается через переменную окружения, что позволяет подключить платформу к любому провайдеру. Исторические имена групп предыдущих версий сохраняются как встроенные (неудаляемые) сопоставления — обновление с версии 199 не требует ручных изменений.

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

Меню пользователя в правом верхнем углу показывает присвоенные роли.

Подробнее в руководстве Администрирование RBAC.

✨ Logs Explorer — новый инструмент работы с логами

Новый переработанный раздел Логи предоставляет унифицированный интерфейс анализа логов из любых источников.

Краткое описание возможностей:

  • Подсказки к именам полей с примерами использования - позволяют построить сложный запрос логов без знания синтаксиса LosQL.
  • Строка запроса с подсветкой синтаксиса LogsQL и кнопкой очистки.
  • Табличное представление с динамическими столбцами — любое поле лога можно вывести как столбец.
  • Гистограмма распределения событий по времени с выбором количества столбцов и топ-значений, а также зумом мышью.
  • Просмотр логов в форматированном JSON с подсветкой.
  • Таймпиккер с пресетами и произвольным диапазоном, пагинация с настраиваемым размером страницы (по умолчанию 500).
  • Сохранение Избранных запросов LogsQL для быстрого повторного использования и история недавних запросов.

./images/200-logs-explorer.png

Подробнее в руководстве Logs Explorer.

✨ Управление уровнем обслуживания (SLO)

В платформе появился раздел для создания и отслеживания целей уровня обслуживания сервисов (Service Level Objectives).

Краткое описание возможностей:

  • Создание, редактирование и удаление SLO типов Доступность и Время отклика с выбором скользящего (rolling) или календарного окна соответствия.
  • Автоматический подбор порога задержки на основе исторических данных и предпросмотр индикатора (SLI) с областью порога.
  • Страница деталей SLO: индикатор соответствия с цветовыми зонами, график сжигания бюджета ошибок (burn-down), карточки скорости сжигания, график SLI с перцентилями P50 / P90 / P95 / P99.
  • Автоматический расчет Error budget, анализ его сгорания с интуитивной цветовой индикацией.
  • Автоматическая генерация правил алертинга: быстрое сжигание (14.4×/1h), медленное сжигание (6×/6h), контроль объёма (volume guard) и исчерпание бюджета.
  • Отчёт о соответствии SLO за произвольный период времени с тремя месяцами по умолчанию.

./images/200-slo-detail.png

Подробнее в руководстве SLO.

✨ Ресурсно-сервисная модель (РСМ)

Ресурсно-сервисная модель (РСМ) Proto визуализирует автодискаверинг всех компонентов инфраструктуры, ключая прикладные компоненты (сервисы, поды Kubernetes, виртуальные машины, очереди, базы данных, внешние API и тд) и взаимосвязей между ними.

./images/200-resource-details.png

Краткое описание возможностей:

  • Каталог ресурсов. В этом разделе можно посмотреть списки ресурсов, создать новый или отредактироовать имеющийся, отфильтровать и найти нужный ресурс, детально проанализировать.
  • Взаимосвязи ресурсов. Для каждого ресурса автоматически отрисовываются входящие и исходящие связи с возможностью переключения глубины графа и полноэкранного режима с подсказками.
  • Граф зависимостей. Интерактивная визуализация зависимостей всех объектов инфраструктуры с цветовой индикацией активных проблем. Возможность по клику перейти к детальному анализу любого объекта.
  • Жизненный цикл ресурсов. Автоматическое отслеживание жизненного цикла ресурсов. Возможность настроить порог вывода из эксплуатации (списания) ресурса.

./images/200-resource-details.png

Подробнее в руководстве Ресурсно-сервисная модель.

✨ Дашборды внешних HTTP-сервисов

Анализ сторонних HTTP-сервисов (API вне платформы) вынесен в отдельный пункт меню Внешние сервисы.

Краткое описание возможностей:

  • Список внешних сервисов с показателями количества вызовов, задержки и процента ошибок по каждому peerHostname.
  • Детальный дашборд каждого внешнего сервиса: ключевые показатели, пропускная способность, задержка (p50 / p95 / p99), ошибки, вызывющие сервисы, анализ трейсов.
  • Переход к деталям внешнего сервиса прямо из вкладки Связи любого сервиса платформы и из контекстного меню графа сервисной топологии.

./images/200-external-http.png

Подробнее в руководстве Внешние HTTP-сервисы.

✨ Дашборды очередей сообщений

Анализ очередей и топиков систем обмена сообщениями (Kafka, JMS, AMQP, RabbitMQ) вынесен в отдельный пункт меню Очереди сообщений.

Краткое описание возможностей:

  • Список MQ-сервисов с анализом ключевых показателей, пропускной способности, задержек, ошибок, Top Callers, Top Destinations, разбивкой по span.kind, таблицей AMQP routing key.
  • Граф направленных зависимостей и возможность проанализировать трейсы очередей.
  • Глубокие ссылки (deep links, диплинки) – перейти на дашборд нужного MQ-сервиса возможно несколькими способами: по клику по строке таблицы, вызвав контекстное меню в графе топологии, а также при клике на значения messaging.destination, messaging.destination.nameи amqp.queue в деталях спана.

./images/200-queue-dashboard.png

Подробнее в руководстве Очереди сообщений (APM).

Улучшения ✨

Трейсы

  • В детальном просмотре трейса появилась вкладка Логи — встроенный Logs Explorer с фильтром по trace_id для быстрого перехода к связанным логам.
  • Ускорена загрузка и отрисовка списка, дерева, таблицы и статистики трейсов на больших объёмах данных.
  • В деталях спана в секции Очередь теперь отображаются все amqp.* теги.

Интерфейс и навигация

  • Русский язык сделан языком интерфейса по умолчанию. Изменить язык можно переключателем вверху страницы.
  • Вкладки дашбордов синхронизированы с URL браузера и историей навигации: работают кнопки «Назад / Вперёд», ссылками на конкретные вкладки можно делиться, при этом переход между дашбордами сохраняет выбранную вкладку.
  • Подсказки графиков базовой линии (AIOPS) теперь показывают значения верхней и нижней границы yhat_upper / yhat_lower.
  • В контекстном меню графа сервисной топологии появились пункты перехода к дашбордам внешнего HTTP-сервиса, базы данных и очереди сообщений.
  • Графики с метриками PromQL используют большую гранулярность

Перестройка меню и навигации

Главное меню платформы перестроено с учётом новых разделов.

  • Добавлены новые разделы меню:
    • Логи (Logs Explorer) - инструмент поиска и анализа логов и визуальный конструктор LogsQL запросов.
    • Трейсы - инструмент поиска и анализа трейсов вынесен в отдельный пункт меню, доступ также сохранился через Приложения > Сервисы > вкладка Трейсы.
    • Алерты > SLO - центр управление уровнем обслуживания сервисов.
    • Роли и доступ - центр управления RBAC и журнал аудита.
    • Приложения > Внешние HTTP-сервисы - список и дашборды для анализа производительности внешних HTTP API.
    • Приложения > Очереди сообщений - список и дашборды для анализа производительности очередей сообщений.
  • Изменения пунктов меню:
    • Транзакции перенесены из раздела Приложения в раздел Бизнес-аналитика и стоят первым пунктом.
    • Настройки ключевых бизнес транзакций и Правила обнаружения ключевых бизнес транзакций перенесены из Настройки APM в Настройки Бизнес-аналитики.

Исправления 🐛

  • JMS-спаны теперь корректно устанавливают peer.hostname из имени очереди.
  • URL-адреса в спанах очищаются от управляющих символов и безопасно кодируются — трейсы с \n, \r, \t или некорректными %XX-последовательностями больше не приводят к ошибкам парсинга.
  • Частота ошибок на графе направленных зависимостей теперь согласуется с агрегатами табличных представлений.
  • Изменено значение по умолчанию переменной окружения POBP_ADD_ENV_SUFFIX_TO_SERVICE_NAME — теперь false. Это значит, что к имени сервиса больше не добавляется суффикс окружения (например, payment-service-prod). Чтобы вернуть прежнее поведение, установите POBP_ADD_ENV_SUFFIX_TO_SERVICE_NAME=true в .env файле.

Инструкция по обновлению с версии 199.5

Для Заказчиков с single host инсталляцией

Необходимо использовать новый файл docker-compose-200.yaml, изменений в .env файле не требуется.

В случае каких-либо сложностей, обратитесь к основной инструкции по установке на новый сервер или команде поддержки партнера или вендора.

  1. Скачайте файл protoobp-backend-dist-singlehost-200.tar.gz:

    curl --header "PRIVATE-TOKEN:<your_token>"  "https://git.proto.group/api/v4/projects/125/packages/generic/protoobp-backend-dist/200/protoobp-backend-dist-singlehost-200.tar.gz" --output protoobp-backend-dist-singlehost-200.tar.gz
    

    где <your_token> – ваш пароль, указанный в лицензионном сертификате, полученном ранее от вендора.

  2. Распакуйте содержимое архива в папку с существующей инсталляцией (по умолчанию /opt/protoobp):

    tar -xzvf protoobp-backend-dist-singlehost-200.tar.gz -C /opt/protoobp
    
  3. Команды ниже рекомендуется выполнять, переключившись на привилегированную учетную запись (ниже команды будут указаны уже без префикса sudo):

    sudo su
    
  4. Перейдите в каталог продукта (/opt/protoobp) и выполните pull новых образов:

    cd /opt/protoobp && docker compose -f docker-compose-200.yaml pull
    

    Дождитесь успешного скачивания новых образов.

  5. Важно. В случае использования собственных SSL-сертификатов, измените файл docker-compose-200.yaml – раскомментируйте соответстующие строки для сервисов proto-nginx и proto-auth.

  6. Важно. В случае использования настроек SSO, измените файл docker-compose-200.yaml – раскомментируйте или измените соответстующие строки для сервиса proto-auth.

  7. Важно. Если в предыдущей версии был изменён пароль администратора Keycloak (пользователь admin мастер-realm-а в сервисе proto-auth), необходимо передать актуальные учётные данные в контейнер через переменные окружения KEYCLOAK_USER и KEYCLOAK_PASSWORD. Без этого при первом запуске 200-й версии служебная процедура миграции существующих пользователей в новые роли RBAC (Admin / Editor / Viewer) будет пропущена, а в логах сервиса proto-auth появится сообщение:

    Admin CLI authentication failed, bootstrap admin password has been changed
    

    Добавьте в .env (или в секцию environment сервиса proto-auth файла docker-compose-200.yaml) актуальные значения:

    KEYCLOAK_USER=admin
    KEYCLOAK_PASSWORD=<актуальный пароль администратора>
    

    Эти переменные следует держать заданными на постоянной основе — при каждой ротации пароля администратора их значения нужно обновлять, иначе на последующих запусках сервиса будут пропущены штатные операции конфигурации realm-а.

  8. Важно. Необходимо создать директорию $POBP_DATA_DIRECTORY/logs:

    mkdir -p /opt/protoobp/data/logs && chown -R 1000:1000 /opt/protoobp/data/logs
    
  9. Остановите предыдущую версию продукта:

    docker compose -f docker-compose-199.yaml down
    
  10. Запустите новую версию продукта:

docker compose -f docker-compose-200.yaml up -d

При первом запуске контейнеры proto-storage, proto-data-aggregator, proto-trace-processor и proto-metric-receiver инициализируются, после чего перезапускаются, что ведет к ошибке в выводе docker compose – это нормальная ситуация, поэтому в случае появления ошибки при первом запуске, отмените выполнение текущей команды (CTRL+c) повторите команду:

docker compose -f docker-compose-200.yaml up -d

Запуск всех компонентов может занять 2-4 минуты. После сообщения об успешном запуске всех контейнеров, перейдите в браузере по адресу, указанному в UI_URL (адрес сервера).

Для Заказчиков с multi host инсталляцией или версией <199.5

Инструкции по обновлению будут предоставлены контактными лицами со стороны поддержки партнера или вендора.