Перейти к основному содержимому
Версия: 2.4

Дашборды

Дашбооды - элементы пользовательского интерфейсы Памир. Дашборды позволяют создавать представления дежурного оператора, давая ему доступ к необходимым показателя здоровья инфрастуктуры и ее топологии. Дашборды строятся из виджетов:

  • графики
  • таблицы
  • индикаторы здоровья
  • карты
  • и др.

Дашборды открываются автоматически, когда запускается клиент.

Область видимости дашборда​

Дашборд может отображать данные только тех конфигурационных единиц (КЕ), которые попадают в его область видимости. Это означает, что не все данные из системы будут доступны на дашборде — только те, которые соответствуют заданным критериям.

Как дашборд получает список конфигурационных единиц?​

Перед отображением данных дашборд должен определить, с какими именно конфигурационными единицами (КЕ) он будет работать. Для этого:

  • Дашборд выполняет TQL-запрос (Topology Query Language — язык запросов для работы с топологией данных в CMDB).
  • Этот запрос отправляется в CMDB (Configuration Management Database — базу данных управления конфигурациями).
  • В результате запроса возвращается список конфигурационных единиц, удовлетворяющих заданным условиям.

Дашборд не может использовать произвольные или разовые TQL-запросы. Для работы с ним необходимо:

  • Заранее создать и сохранить TQL-запрос в системе.
  • Привязать этот сохраненный запрос к дашборду.
  • Это обеспечивает контроль над данными и предотвращает использование некорректных или неоптимизированных запросов.

Использование списка КЕ виджетами дашборда​

После получения списка конфигурационных единиц:

  • Виджеты (графики, таблицы, индикаторы) на дашборде используют этот список для запроса конкретных данных по каждой КЕ.
  • Например, если конфигурационная единица — это "сервер" или "сетевое устройство", то виджеты могут отображать его состояние, загрузку, доступность и другие метрики.

Область видимости дашборда определяется заранее сохраненным TQL-запросом (Topology Query Language), который фильтрует конфигурационные единицы (КЕ) в CMDB. Без этого запроса дашборд не сможет получить данные для отображения в виджетах. Такой подход обеспечивает структурированный, безопасный и управляемый доступ к информации в системе.

Пост-фильтрация TQL запросов​

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

Принцип работы​

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

Использование на дашборде​

  1. Вызов функции: Кнопка Фильтр (иконка воронки) расположена в правом верхнем углу на панели инструментов дашборда.
  2. Настройка: В открывшемся окне задайте необходимые ограничения (например, выбор конкретной инсталляции по IP-адресу, как показано на скриншоте).
  3. Результат применения:
    • Дерево топологии (панель слева): список КЕ фильтруется, оставляя только узлы, удовлетворяющие условиям, и их связи.
    • Виджеты: Графики, метрики и информационные панели дашборда обновляются, отображая данные только для отфильтрованных конфигурационных единиц.

Создание дашборда​

Создание дашборда выполняется со страницы Главная / Дашборды.

img.png

В модальном окне создания дашборда нужно заполнить поля:

Импорт дашбордов​

Импорт дашбордов, как и их создание, выполняется на странице Главная / Дашборды.

Процесс импорта:

  1. В модальном окне импорта укажите файл с конфигурацией дашборда (в формате JSON) или вставьте его содержимое в текстовое поле.
  2. Система проанализирует конфигурацию. Если будут найдены конфликты (например, дашборд с таким именем уже существует), вам потребуется выбрать одно из действий:
    • Пропустить: Этот дашборд не будет импортирован.
    • Заменить существующий: Текущий дашборд будет полностью заменен версией из файла.
    • Переименовать: Дашборд будет импортирован с новым названием.

Тип дашборда после импорта:

  • При замене существующего дашборда его тип (Личный или Общий) не изменится.
  • При импорте нового или импорте с переименованием всегда создается Общий дашборд.
подсказка

Обратите внимание: Даже если вы импортируете дашборд, который изначально был Личным, в результате он станет Общим.

Параметризация TQL дашборда​

Для уточнения выборки КЕ для дашборда можно использовать параметризацию TQL запроса. Для этого в меню дашборда предусмотрен фильтр, который отвечает за параметризиацию. "Фильтр"

Фильтр позволяет параметризовать TQL запрос с помощью ТКЕ и конкретных КЕ.

"Фильтр"

Диапазон времени дашборда​

Абсолютный диапазон​

Позволяет задать точный период:

  • Начальная дата и время – с какого момента отображать данные.
  • Конечная дата и время – до какого момента (если не указано, используется текущее время).
  • Можно задать время с точностью до минуты.

Пример использования:

"Абсолютный диапазон с 09.06.2025 00:00 до 16.06.2025 00:00"

Относительный диапазон​

Позволяет выбрать период относительно текущего времени:

  • Введите число и выберите единицу измерения: минуты, часы, дни, недели, месяцы.
  • Таблица покажет данные за указанный промежуток времени до текущего момента.

Примеры:

  • "1 день" – данные за последние 24 часа.
  • "2 недели" – данные за последние 14 дней.

Общие настройки виджетов​

Заголовок виджета​

Заголовок виджета позволяет написать название виджета и включить/выключить его отображение.

"Заголовок"

Название виджета это литеральная строка в верхней части виджета.

Название отображается если:

  • Заполнено соответствующее поле
  • Выключен параметр Скрыть заголовок

Фильтрация КЕ​

Виджет работает в рамках области области видимости дашборда.

"Фильтрация КЕ"

Принцип фильтрации: Фильтр позволяет ограничить перечень КЕ, доступных для отображения в виджете.

Правила фильтрации:

  1. Фильтр не применён (пустой)
  • Виджет отображает все КЕ из области видимости дашборда
  1. Фильтр применён (заполнен хотя бы одно поле)
  • Виджет показывает только КЕ, соответствующие условиям фильтра
  • Остальные КЕ исключаются из отображения

Частные случаи:

  • Заполнено только поле "Узел TQL" → Виджет включает все КЕ выбранного узла TQL
  • Заполнены оба поля ("Узел TQL" и "КЕ") → Виджет отображает только указанные КЕ из выбранного узла

Важно: Если условия фильтрации не соответствуют ни одной КЕ в CMDB, виджет может отображаться пустым. Такая ситуация может случиться в следствии изменения CMDB, после сохранения значений фильтра. Рекомендуется проверять корректность заданных фильтров.

Настройка источника данных​

Подробное описание источников данных и их настройки см. в Источники данных виджетов.

Редактор метрик​

Редактор метрик используется для написания PromQL запросов к Prometheus.

Меню редактора метрик:

  • Переименование метрик. Используется для переименования лейблов метрик и настройки легенды. "Alias" Для составления шаблона используется расширенный синтаксис Handlebars. Добавлены функции привязки и подмены отображаемых значений enumMap, kvMap и kvRegexMap. enumMap позволяет привязать значения к лейблам метрик, kvMap позволяет составить словарь значений для подстановки в шаблон, а kvRegexMap работает аналогично kvMap, но с применением регулярных выражений.

  • Шаблоны. Используется для подстановки параметризированных шаблонных частей PromQL запроса

  • Копировать

  • Вставить

  • Открыть редактор в модальном окне

Шаблон легенды​

Название метрики может использоваться во многих виджетах:

  • название измеряемой величины в виджете Одно значение
  • легенды в графиках

Название метрики формироваться на основе шаблона. В шаблоне должна быть возможность использования лейблов из метаданных метирки. Шаблон должен разрешаться в строку. Если указанный в шаблоне лейбл отсутствует в метрике, то вместо него подставляется пустая строка "".

Группировка КЕ​

Группировка - опциональный параметр. Группировка нужна для применения виджета к различным КЕ, с сохранением их связанности.

img.png

Типы группировки:

  • Вся область видимости TQL
  • Узлы TQL
  • КЕ

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

Пример: "Fallback"


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

В результате группировки в карточке виджета будут созданы вкладки по каждому КЕ.

Группировка по КЕ требует заполнения источника данных для виджета в привязке к каждому ТКЕ. При этом запрос не ограничивается перечнем КЕ выбранного типа. В запросе могут быть использованы ссылки на связанные КЕ других типов. При этом Памир по CMDB самостоятельно определит наличие/отсутствие связей. В случае их наличия - подставит в запрос.

подсказка

Структура CMDB

Запрос источника данных для узла TQL Parent

Узел TQL Parent "[[ tql_parent_1.attribute.name ]]" связан с узлами TQL Child "[[ tql_child_2.attribute.name ]]"

Разрешение запроса

Для каждого КЕ, принадлежащему узлу Parent будет создана вкладка. На вкладках запросы разрешаться в:

  • Parent A - Узлел TQL Parent "Parent A" связан с узлами TQL Child "Child A1|Child A2"
  • Parent B - Узлел TQL Parent "Parent B" связан с узлами TQL Child "Child B"
  • Parent C - Узлел TQL Parent "Parent C" связан с узлами TQL Child ""

Пример: "Group"


Узлы TQL - вариант формирования источника данных, при котором все КЕ, находящиеся в области видимости дашборда группируются по принадлежности к узлу TQL.

Данный тип группировки предполагает заполнения источника данных для виджета в привязке к каждому узлу TQL. Памир разрешает ссылки на связанные КЕ других типов аналогично группировке КЕ. Отличие заключается в том, что запрос должен разрешиться относительно каждого КЕ, входящего в узел TQL. Запросы будут объединены через PromQL оператор OR.

подсказка

Структура CMDB

Запрос источника данных для узла TQL Parent

metric_name{label1=[[ tql_parent_1.attribute.name ]], label2=[[ tql_child_2.attribute.name ]]}

Разрешение запроса

metric_name{label1="Parent A", label2="Child A1|Child A2"} OR
metric_name{label1="Parent B", label2="Child B"} OR
metric_name{label1="Parent C", label2=""} OR

Привязка значений​

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

Как настроить привязку значений​

  1. В панели Dashboard откройте настройки виджета.
  2. В виджете перейти в раздел Настройки.
  3. Нажмите кнопку Добавить.
  4. Введите конкретные значения и их текстовые аналоги.
  5. Сохраните изменения и проверьте отображение на дашборде.

Пример использования​

Допустим, у вас есть метрика status с значениями:

  • 0 – система offline
  • 1 – система online
  • 2 – система в режиме ожидания

Вы можете настроить маппинг:

  • 0 → "Offline"
  • 1 → "Online"
  • 2 → "Standby"

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

Настройка единиц измерения​

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

Принцип работы

Когда вы выбираете единицы измерения в Памир, система автоматически:

  • Масштабирует значения (например, преобразует байты в мегабайты)
  • Добавляет соответствующий суффикс (%, °C, MB/s и т.д.)
  • Форматирует отображение чисел

Доступ к настройкам находится в:

  • Разделе "Настройки" → "Единицы измерения"

Примеры преобразований

Исходное значениеВыбранная единицаОтображение
1024bytes1024 B
1024kilobytes1 KB
0.85percent85%
1000000short1M
0.333333seconds333ms

Особенности работы:

  • Автоматическое масштабирование

    • Для единиц данных: B → KB → MB → GB
    • Для времени: ns → μs → ms → s → m → h
  • Влияние на инструменты

    • Единицы учитываются при:
      • Отображении на графиках
      • Форматировании таблиц
      • Показе значений в тултипах
  • Важные нюансы

    • Не влияют на исходные данные
    • Работают согласовано с осями графиков

Привязка значения

Настройка пороговых значений​

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

Базовые параметры​

base.png

  • Базовое значение: Определяет порог по умолчанию, который применяется независимо от других настроенных порогов
  • Тип данных: Необходимо указать тип обрабатываемых данных (числовой или строковый) для корректной работы порогов

Работа с разными типами данных​

string.png

Для строковых значений:

  • Система последовательно проверяет соответствие полученного значения заданным порогам
    • Требуется точное совпадение строк
  • Применяется первый подходящий порог из списка

range.png

Для числовых значений:

  1. Дополнительные пороги: Пользователь может задать несколько числовых значений, разделяющих диапазоны
  2. Автоматическая сортировка: Перед сравнением система сортирует пороги по возрастанию
  3. Механизм сравнения:
  • Полученное значение последовательно проверяется относительно каждого порога
  • При достижении или превышении порога активируется соответствующий уровень

Пример настройки​

Рассмотрим пример с четырьмя уровнями:

  1. Норма (зелёный): значения <50
  2. Предупреждение (жёлтый): \≥50
  3. Предкритический (оранжевый): \≥80
  4. Критический (красный): \≥100

В этом случае:

  • Значение 45 отобразится зелёным
  • Значение 60 - жёлтым
  • Значение 90 - оранжевым
  • Значение 100 и выше - красным

Примечание: Для корректной работы убедитесь, что тип порогов соответствует типу поступающих данных.

Продолжаем формировать документацию. Добавляю раздел по экспорту и импорту дашбордов — это первый шаг для подготовки файлов к созданию Пакета конфигураций.

Экспорт и импорт дашбордов​

Раздел Дашборды позволяет выгружать конфигурации информационных панелей в формате JSON. Эта функция необходима для резервного копирования, переноса настроек между разными экземплярами системы, а также для добавления дашбордов в Пакет конфигураций (Контент-пак).

Расположение в системе: В левом боковом меню перейдите по пути: Главная → Дашборды.

Экспорт дашбордов (подготовка для Контент-пака)​

На странице «Реестр дашбордов» представлена таблица со всеми доступными в системе информационными панелями. Для удобства поиска вы можете использовать строку поиска, фильтры по тегам или по уровню доступа (Всё / Личный / Общий).

Чтобы выгрузить конфигурацию дашбордов:

  1. В левой колонке таблицы отметьте галочками (чекбоксами) один или несколько дашбордов, которые необходимо экспортировать (например, audit2, del_tag).
  2. После выбора элементов в правом верхнем углу (под кнопкой «Добавить») станет активно выпадающее меню действий. В нем отобразится надпись с количеством отмеченных элементов (например, «Выбрано: 2»).
  3. Нажмите на это выпадающее меню и выберите пункт «Экспорт».
  4. Система автоматически сформирует и скачает на ваш компьютер файл в формате .json, содержащий конфигурацию всех выбранных дашбордов.

Связь с Пакетом конфигураций: Полученный при экспорте JSON-файл нужно использовать на странице создания Пакета конфигураций. Загрузите этот файл в поле «Дашборды».

Импорт дашбордов напрямую​

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

Чтобы импортировать дашборды:

  1. На странице «Реестр дашбордов» откройте выпадающее меню действий в правом верхнем углу.
  2. Выберите пункт «Импорт».
  3. В открывшемся окне выберите подготовленный JSON-файл с конфигурацией дашбордов на вашем компьютере.
  4. Дашборды будут добавлены в систему с сохранением их оригинальных тегов, запросов и настроек приватности.

Связанные разделы​