DRX INFRA Обсудить задачу

Наша разработка · Без интернета · Docker и Podman

Мониторинг Directum RX в коробке

Метрики, логи, панели и тревоги для одного–десяти серверов RX на одном сервере мониторинга. Ставится без интернета за несколько минут, на отечественных ОС. Когда что-то ломается, локальная модель сразу пишет первичный разбор: что происходит и что проверить.

🟠 Внимание · Долгие транзакции на db01
Самая долгая — 15 минут. Влияние: другие сессии встают в очередь за блокировками, VACUUM не чистит таблицы RX.
Разбор ИИ
Вероятная причина: Транзакция от сервиса Sungero.WebServer выполняет обновление статуса задач, держа снимок и блокировки. Срочность: сейчас — транзакция блокирует работу системы.

Ниже снимки с нашего демо-стенда. Компания выдуманная («Северный ветер», 40 сотрудников, два сервера приложений), а мониторинг настоящий: логи идут через тот же агент, что ставится клиентам, метрики собирают те же экспортёры, разборы пишет модель qwen3:8b. В 10:20 по расписанию «тормозит база» — на снимках видно, как это выглядит.

Экран

Включите JavaScript, чтобы увидеть экраны.

Что внутри

Это наш рабочий мониторинг крупного внедрения Directum RX, переупакованный так, чтобы его мог поставить администратор без опыта DevOps. Панели и тревоги — те же, проверенные в эксплуатации.

Логи RX разобраны, а не просто собраны

Агент разбирает логи всех сервисов RX: действия пользователей в веб-клиенте, вызовы API, фоновые задания и обработчики, workflow, события ИБ. Каждая ошибка размечена по критичности: критично, дефект, известное, шум. По умолчанию шум скрыт.

Около 190 правил тревог

Серверы, PostgreSQL, RabbitMQ, MinIO, Elasticsearch, Keycloak, доступность веб-клиента и сам мониторинг. Каждая тревога сразу пишет факт в цифрах, чем это грозит пользователям и куда смотреть первым делом.

67 дашбордов

Главный экран отвечает «всё ли в порядке» за пять секунд. Дальше — RX по слоям (веб-клиент, API, фон, ошибки, события ИБ, пользователи), PostgreSQL до уровня запросов и блокировок, очереди RabbitMQ, серверы. Время везде в вашем часовом поясе.

Открытые компоненты, без Elasticsearch

VictoriaMetrics, VictoriaLogs, Grafana, Alertmanager, Vector, node_exporter. Логи хранятся в VictoriaLogs: на порядок меньше памяти и диска, чем Elasticsearch, и не нужен отдельный кластер.

Модули по необходимости

Kubernetes — если RX в кластере: метрики и логи кластера, 49 правил, 31 дашборд. ИИ — модель помощника и разбор тревог. По умолчанию выключены.

Без интернета и на своих ОС

Серверы клиентов часто не видят интернет, а Telegram и чужие реестры образов закрыты. Поэтому всё нужное лежит в одном архиве.

Один архив около 900 МБ

Все образы, плагины Grafana, агент для серверов RX, правила и дашборды. Целостность проверяется по контрольным суммам перед установкой.

Образы собраны из исходников

Каждый компонент пересобран нами на свежем Go и проверен trivy: уязвимостей уровня HIGH и CRITICAL с исправлением нет. Что закрыть нельзя — перечислено с причиной.

Проверки до установки

drxmon preflight смотрит ОС и архитектуру, Docker или Podman, ресурсы, место под хранение, занятость порта, синхронизацию времени, SELinux и целостность комплекта. Ничего не меняет.

ПровереноСервер мониторингаАгент на серверах RX
Debian 12Docker 26–29да
RED OS 8Podman 5.8, podman-compose, SELinux Enforcingда
Astra Linux SE 1.7 «Орёл»—да
Astra Linux SE 1.7 «Воронеж», МКЦ—да, от администратора с уровнем целостности 63

Установка за несколько минут

На демо-стенде от распакованного архива до работающих панелей с историей прошло меньше трёх минут.

  1. Проверьте и поставьте

    ./drxmon preflight
    sudo ./drxmon install

    Установка загрузит образы, создаст пароли и сертификат, поднимет стек и напечатает адрес, пароль и команду для агента.

  2. Поставьте агент на серверы RX

    curl -fsS --cacert server.crt https://мониторинг:8443/agent/install.sh | sudo sh -s -- \
      --server мониторинг:8443 --token … --roles rx,postgres --rx-logs /srv/rx/logs
    ./drxmon add-host rx-app01 10.0.0.11 --roles rx

    Агент скачивается с сервера мониторинга, а не из интернета, и проверяет каждый файл по контрольной сумме.

  3. Включите тревоги

    ./drxmon configure-alerts --email it@company.ru --smtp smtp.company.ru:587 --from monitoring@company.ru
    ./drxmon check-telegram

    Почта — всегда. Telegram включается, только если его API доступен с сервера (напрямую или через прокси); иначе остаётся почта, без тихой потери тревог.

Разбор тревог моделью

Тревога говорит «что сломалось». Разбор отвечает на следующий вопрос дежурного: «почему и что делать» — по данным мониторинга этой минуты.

Модель видит то же, что дежурный

К тревоге сервис собирает контекст: как показатель менялся последний час, что с сервером (процессор, память, диски, службы, время), частые ошибки в логах за 20 минут, какие ещё тревоги горят. Модель пишет: что происходит, вероятная причина, что проверить, срочность и насколько уверена.

Приходит тем же каналом

Разбор приходит отдельным сообщением на почту или в Telegram сразу после тревоги и попадает на дашборд «Разборы». Если виновник меняется (другой процесс, другое приложение), разбор делается заново.

Модель у вас

Работает с любой моделью на вашем сервере: Ollama, vLLM, GigaChat в контуре. Данные мониторинга никуда не уходят. Тот же модуль показывает, как работает сама модель помощника: задержки, скорость ответа, память GPU, ошибки.

Разбор с демо-стенда слово в слово: тревога «Долгие транзакции» на db01, модель qwen3:8b, 15 секунд от тревоги до разбора

Что происходит: На сервере db01 длится транзакция более 15 минут, блокируя другие запросы и вызывая рост bloat в таблицах RX.
Вероятная причина: Транзакция от сервиса Sungero.WebServer выполняет обновление статуса задач, держа снимок и блокировки.
Что проверить: 1) SELECT pid, usename, application_name, state, now() - xact_start, left(query, 200) FROM pg_stat_activity WHERE datname = 'rx' AND now() - xact_start > interval '15 seconds' ORDER BY 5 DESC
2) Проверить, какой сервис открыл транзакцию и завершить её, если это idle in transaction
3) Grafana → «PostgreSQL — здоровье» → Long transactions
Срочность: сейчас — транзакция блокирует работу системы.
Уверенность: высокая — данные указывают на конкретную транзакцию и её источник.

Разбор — подсказка, а не диагноз. Модель видит только собранный контекст и может ошибаться, в каждом сообщении это сказано. Модуль развивается: коллеги разбирают каждую неточность, и правила для модели становятся строже.

Как получить

Сейчас — в пилоте с нашими клиентами: ставим, настраиваем под вашу систему и остаёмся на связи.

Комплект для вашей ОС

Архив и установка на ваш сервер: RED OS, Astra, Debian, с Docker или Podman. Для организаций, где обязательна сертифицированная ОС.

Готовая виртуальная машина

Образ OVA для VMware и VirtualBox, qcow2 для Proxmox, zVirt, Бреста, OpenStack и облаков, VHDX для Hyper-V. Импортировали, включили: через пару минут на экране консоли адрес, пароль и команда для агента на серверы RX. Интернет не нужен, адрес берётся по DHCP или задаётся с консоли. Данные на отдельном диске: новая версия — новая ВМ на прежнем диске. Образ передаём по запросу.

Посмотреть, как мониторинг замечает аварии раньше пользователей, можно и в интерактивной симуляции.