Самомониторинг ПАМИР
Памир — набор микросервисов и сопутствующих компонентов, для которых в решении самомониторинга собрана единая сервисно-ресурсная модель, настроен сбор системных и прикладных метрик, а также подготовлены специализированные дашборды для основных сервисов, PostgreSQL и OpenSearch.
Самомониторинг Памир охватывает:
- собственные микросервисы Памир: СРМ, Мониторинг, Аутентификация, Notification, Docker Tool, Task Tool, License;
- сторонние и дополнительные сервисы;
- PostgreSQL ПАМИР с детализацией до базы данных, схемы и таблицы;
- OpenSearch;
- лицензирование, состояние контейнеров, системные ресурсы, сетевую и дисковую активность.
Памир строит для ПАМИР сервисно-ресурсную модель, а мониторинг использует эту модель как основу для привязки метрик, индикаторов здоровья и навигации между дашбордами.
Уровни модели СРМ
Памир
│
├── ✅ Памир микросервис
│ │
│ ├── ✅ Мониторинг
│ ├── ✅ СРМ
│ ├── ✅ Аутентификация
│ ├── ✅ Notification
│ ├── ✅ Docker Tool
│ ├── ✅ Task Tool
│ ├── ✅ License
│ ├── ✅ Сторонние
│ └── ✅ Дополнительные
│
└── ✅ PostgreSQL Памир
│
└── ✅ База данных
│
└── ✅ Схема
│
└── ✅ Таблица
✅ — отмечены уровни, включённые в шаблоны самомониторинга ПАМИР.
Ниже приведены описания уровней модели.
Памир
Атрибуты:
- Название: имя корневой КЕ ПАМИР.
- Наименование КЕ: отображаемое имя на дашбордах и графе.
- Конфигурация: исходная конфигурация объекта.
Памир микросервис
Атрибуты:
- Название: имя сервиса.
- Наименование КЕ: отображаемое имя на дашбордах и графе.
- Title: дополнительное отображаемое название.
- Количество нод: число нод сервиса.
- Maintainer: ответственный за сопровождение.
- Проект: проект, к которому относится сервис.
- Версия: версия сервиса.
- Вендор: поставщик или производитель решения.
- Конфигурация: исходная конфигурация объекта.
PostgreSQL Памир
Атрибуты:
- Название: имя экземпляра PostgreSQL.
- Наименование КЕ: отображаемое имя на дашбордах и графе.
- Instance: адрес подключения к экземпляру PostgreSQL.
- auth_module: модуль аутентификации экспортёра.
- Версия: версия PostgreSQL.
- Логин: логин подключения экспортёра.
- База данных: целевая БД.
- IP адрес: IP-адрес сервера БД.
- Конфигурация: исходная конфигурация объекта.
База данных
Атрибуты:
- Название: имя базы данных.
- Наименование КЕ: отображаемое имя на дашбордах и графе.
- Конфигурация: исходная конфигурация объекта.
Схема
Атрибуты:
- Название: имя схемы.
- Наименование КЕ: отображаемое имя на дашбордах и графе.
- Конфигурация: исходная конфигурация объекта.
Таблица
Атрибуты:
- Сервер СУБД: экземпляр PostgreSQL, на котором находится таблица.
- База данных: база данных таблицы.
- Схема базы данных: схема таблицы.
- Название: имя таблицы.
- Наименование КЕ: отображаемое имя на дашбордах и графе.
- Конфигурация: исходная конфигурация объекта.
Логика построения СРМ
Корневая TКЕ pamir связывается по связи типа асоциация с TКЕ микросервисами и PostgreSQL.
Для микросервисов базовым типом является ТКЕ pamir_microservice. Отдельные выборки шаблона выделяют:
- Основные сервисы:
auth,monitoring,task-tool,docker-tool,notification,license,srm,docker-tool,auth,monitoring,srm,task-tool,license,notification,srm,monitoring; - группу Сторонние: сервисы проекта
PAMIR, не входящие в основной набор ПАМИР; - группу Дополнительные: сервисы, которые не входят в проект
PAMIR.
PostgreSQL Памир строится как отдельная ассоциированная КЕ patgresql_pamir, от которой по композиции формируются:
- База данных
- Схема
- Таблица
Пример TQL-шаблона:

Пример графа СРМ:

СРМ как основа мониторинга
СРМ определяет, к какой КЕ относятся метрики и на каком уровне их показывать:
- на уровне Памир — общая сводка по системе;
- на уровне Памир микросервис — статус и ресурсы конкретного сервиса;
- на уровне Сторонние / Дополнительные — наблюдение за сервисами;
- на уровне PostgreSQL Памир — состояние СУБД;
Механизм сбора метрик
Сбор метрик осуществляется через:
pamir-agentдля системных метрик узла;cadvisorдля контейнерных метрик;docker-state-exporterдля статуса контейнеров;postgres_exporterдля базовых метрик PostgreSQL;sql_exporterдля Vacuum & Freeze метрик PostgreSQL;elasticsearch-exporterдля OpenSearch.
Метрики по уровню СРМ
Уровень СРМ: Памир
Примеры метрик:
node_cpu_seconds_total: время CPU по режимам, используемое для расчёта загрузки процессора узла.node_memory_MemTotal_bytes,node_memory_MemAvailable_bytes: общий и доступный объём оперативной памяти.node_filesystem_avail_bytes,node_filesystem_size_bytes: свободный и общий объём файловой системы.container_cpu_usage_seconds_total: загрузка CPU контейнеров.container_memory_working_set_bytes: потребление памяти контейнерами.container_state_status: состояние контейнеров.container_state_health_status: результат health-check контейнеров.license_usage: использование лицензий.up: доступность таргетов и экспортёров.ALERTS: активные алерты.pg_stat_activity_count: подключения к PostgreSQL.pg_locks_count: блокировки PostgreSQL.sql_pg_relation_size: размер таблиц БД.
Метрики показывают утилизацию узла, состояние сервисов, сводку мониторинга и состояние PostgreSQL.

Уровень СРМ: Памир микросервис
Примеры метрик:
container_state_status: состояние контейнера.container_state_health_status: состояние health-check контейнера.container_start_time_seconds: время запуска контейнера.container_cpu_usage_seconds_total: загрузка CPU контейнера.container_memory_working_set_bytes: рабочая память контейнера.process_resident_memory_bytes,process_virtual_memory_bytes: RSS и виртуальная память процесса.process_open_fds,process_max_fds: текущие и максимальные файловые дескрипторы.container_network_receive_bytes_total,container_network_transmit_bytes_total: входящий и исходящий трафик.container_fs_reads_bytes_total,container_fs_writes_bytes_total: чтение и запись по файловой системе.
Для python-сервисов дополнительно используются:
python_gc_collections_total: частота запусков сборщика мусора.python_gc_objects_collected_total: количество собранных объектов.python_gc_objects_uncollectable_total: количество несобираемых объектов.
Для сервисов с лицензированием дополнительно используются:
license_usage: текущее использование лицензии.license_allow: разрешённый лимит лицензии.license_overdraft: допустимый овердрафт лицензии.license_expiration_time: срок действия лицензии.
Метрики микросервисов показывают статус контейнера, uptime, CPU, память, процессные показатели, сеть, диск и дополнительные python или лицензионные метрики.

Уровень СРМ: PostgreSQL Памир
Примеры метрик:
pg_up: доступность PostgreSQL.pg_stat_activity_count: число клиентских сессий.pg_stat_activity_max_tx_duration: максимальная длительность активной транзакции.pg_locks_count: активные блокировки.pg_stat_database_xact_commit,pg_stat_database_xact_rollback: commit и rollback транзакций.pg_stat_database_tup_fetched,pg_stat_database_tup_inserted,pg_stat_database_tup_updated,pg_stat_database_tup_deleted,pg_stat_database_tup_returned: табличные операции.pg_settings_max_connections: лимит соединений.pg_settings_work_mem_bytes,pg_settings_maintenance_work_mem_bytes,pg_settings_shared_buffers_bytes,pg_settings_effective_cache_size_bytes: параметры памяти.pg_settings_seq_page_cost,pg_settings_random_page_cost: параметры планировщика.pg_settings_max_worker_processes,pg_settings_max_wal_size_bytes: параметры выполнения и WAL.pg_database_size_bytes: размер базы данных.sql_pg_relation_size: размер таблиц.
Метрики PostgreSQL показывают подключения, табличные операции, транзакции, блокировки, параметры экземпляра и размеры объектов.

Примеры метрик:
sql_frozen_transaction: freeze horizon, число vacuum-операций и время с последнего vacuum.sql_dead_tuples: число live/dead tuples, порог autovacuum, признак необходимости autovacuum.sql_cleanup_analyze_stats: vacuum, autovacuum и время после их последних запусков.sql_state_transactioncs: количество клиентских сессий по состояниям.
Метрики Vacuum & Freeze показывают состояние обслуживания таблиц PostgreSQL и позволяет контролировать риск wraparound и рост dead tuples.

Уровень СРМ: OpenSearch
Примеры метрик:
elasticsearch_clusterinfo_up: доступность кластера.elasticsearch_cluster_health_status: статус кластера.elasticsearch_cluster_health_number_of_nodes,elasticsearch_cluster_health_number_of_data_nodes: количество нод.elasticsearch_cluster_health_active_shards,elasticsearch_cluster_health_unassigned_shards: состояние шардов.elasticsearch_filesystem_data_available_bytes,elasticsearch_filesystem_data_size_bytes: дисковое пространство.elasticsearch_jvm_memory_used_bytes,elasticsearch_jvm_memory_max_bytes: использование JVM.elasticsearch_process_cpu_percent: загрузка CPU процесса.elasticsearch_indices_docs: количество документов.elasticsearch_indices_store_size_bytes: размер индексов.elasticsearch_indices_translog_size_in_bytes: размер translog.elasticsearch_indices_search_query_total: поисковые запросы.elasticsearch_indices_indexing_index_total: операции индексации.
Метрики OpenSearch показывают состояние кластера, диска, JVM, индексов и текущую нагрузку.

Индикаторы здоровья
PostgreSQL не отвечает
Показывает недоступность PostgreSQL.
Уровень СРМ: PostgreSQL
Метрика: pg_up
Порог: значение метрики pg_up равно 0 в течение 5 минут
Причины:
- PostgreSQL не принимает подключения.
- Сбой сети или аутентификации экспортёра.
Медленные запросы PostgreSQL
Показывает долгоживущие транзакции и запросы.
Уровень СРМ: PostgreSQL
Метрика: pg_stat_activity_max_tx_duration
Порог: > 300 секунд
Причины:
- Длительная транзакция удерживает ресурсы.
- Медленный запрос или блокировка.
Низкий cache hit ratio PostgreSQL
Показывает снижение эффективности кэша PostgreSQL.
Уровень СРМ: PostgreSQL
Метрики: pg_stat_database_blks_hit, pg_stat_database_blks_read
Порог: отношение попаданий в кэш к сумме попаданий в кэш и чтений с диска < 70%
Причины:
- Недостаточный объём памяти.
- Рост чтений с диска.
Высокое количество соединений PostgreSQL
Показывает приближение к лимиту соединений.
Уровень СРМ: PostgreSQL
Метрики: pg_stat_activity_count, pg_settings_max_connections
Порог: отношение текущего количества соединений к max_connections > 70%
Причины:
- Рост числа клиентов БД.
- Утечки соединений.
Высокий QPS PostgreSQL
Показывает аномально высокий поток транзакций.
Уровень СРМ: PostgreSQL
Метрики: pg_stat_database_xact_commit, pg_stat_database_xact_rollback
Порог: суммарная скорость commit и rollback > 10000
Причины:
- Резкий всплеск нагрузки.
- Изменение профиля запросов приложения.
Средняя загрузка CPU микросервиса
Показывает перегрузку контейнера по CPU.
Уровень СРМ: Памир микросервис
Метрика: container_cpu_usage_seconds_total
Порог:
- warning:
> 80% - error:
> 95%Причины: - Рост вычислительной нагрузки.
- Неоптимальная работа сервиса.
Файловые дескрипторы микросервиса
Показывает приближение процесса к лимиту открытых файловых дескрипторов.
Уровень СРМ: Памир микросервис
Метрики: process_open_fds, process_max_fds
Порог:
- warning:
> 80% - error:
> 95%Причины: - Рост числа соединений или открытых файлов.
- Утечка дескрипторов.
Сервис не запущен
Показывает остановку контейнера.
Уровень СРМ: Памир микросервис
Метрика: container_state_status
Порог: контейнер не находится в состоянии running или restarting
Причины:
- Процесс остановлен.
- Ошибка запуска контейнера.
Сервис постоянно перезапускается
Показывает цикл рестартов контейнера.
Уровень СРМ: Памир микросервис
Метрика: container_state_status
Порог: число переходов в состояние restarting за 5 минут > 3
Причины:
- Ошибка инициализации приложения.
- Недоступность внешней зависимости.
Нездоровый health-check сервиса
Показывает нарушение Docker health-check.
Уровень СРМ: Памир микросервис
Метрика: container_state_health_status
Порог: состояние unhealthy или starting дольше 5 минут
Причины:
- Сервис не готов принимать нагрузку.
- Ошибка внутренних проверок.
Превышение лимитов лицензий
Показывает исчерпание лимита лицензии.
Уровень СРМ: Памир микросервис
Метрики: license_usage, license_allow, license_overdraft
Порог:
- error: использование
>=лимитуlicense_allow - critical: использование
>=суммеlicense_allowиlicense_overdraftПричины: - Рост числа лицензируемых сущностей.
- Превышение допустимого объёма использования.
Скорое окончание лицензии
Показывает остаток времени до завершения действия лицензии.
Уровень СРМ: Памир
Метрика: license_expiration_time
Порог:
- warning: до окончания осталось
< 30 дней - error: до окончания осталось
< 1 сутокПричины: - Лицензия подходит к завершению.
- Требуется продление.
Низкий свободный диск OpenSearch
Показывает риск переполнения data-диска OpenSearch.
Уровень СРМ: Сторонние / OpenSearch
Метрики: elasticsearch_filesystem_data_available_bytes, elasticsearch_filesystem_data_size_bytes
Порог: отношение свободного места к общему объёму < 20%
Причины:
- Рост объёма индексов.
- Недостаточный объём диска.
Дашборды
Памир компоненты
Компоненты ПАМИР в виде дерева, к каждому типу компонента привязан свой дашборд.

Памир
Общая информация по ПАМИР — индикаторы здоровья, ресурсы, состояние сервисов, лицензирование и БД.

Фильтр: отсутствует
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
node_cpu_seconds_total | Время CPU по режимам |
node_memory_MemTotal_bytes | Общий объём оперативной памяти |
node_memory_MemAvailable_bytes | Доступный объём оперативной памяти |
node_filesystem_avail_bytes | Свободное место на файловой системе |
node_filesystem_size_bytes | Общий размер файловой системы |
container_cpu_usage_seconds_total | Накопленное процессорное время контейнеров |
container_memory_working_set_bytes | Потребление памяти контейнерами |
container_state_status | Состояние контейнеров |
container_state_health_status | Health-check контейнеров |
license_usage | Использование лицензий |
up | Доступность таргетов и экспортёров |
ALERTS | Активные алерты |
pg_stat_activity_count | Подключения к PostgreSQL |
pg_locks_count | Блокировки PostgreSQL |
sql_pg_relation_size | Размер таблиц PostgreSQL |
Правила расчёта и агрегации:
- Загрузка ЦПУ — вычитание доли времени простоя CPU из 100 по метрике
node_cpu_seconds_total, с округлением до одного знака после запятой. - Загрузка ОЗУ — отношение разности метрик
node_memory_MemTotal_bytesиnode_memory_MemAvailable_bytesкnode_memory_MemTotal_bytes, умноженное на 100 и округлённое до одного знака после запятой. - Использование диска — отношение разности метрик
node_filesystem_size_bytesиnode_filesystem_avail_bytesкnode_filesystem_size_bytes, умноженное на 100. - Потребление ЦПУ сервисами — сумма скоростей прироста метрики
container_cpu_usage_seconds_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - Потребление ОЗУ сервисами — сумма текущих значений метрики
container_memory_working_set_bytesс группировкой по сервису и переводом в МБ. Временной ряд; интервал задаётся в дашборде. - Таблица «Состояние сервисов» — текущие значения метрик
container_state_status,container_state_health_status. - КЕ — текущее значение метрики
license_usageдля сущностиCIS. - График «КЕ» — текущее значение метрики
license_usageдля сущностиCIS. Временной ряд; интервал задаётся в дашборде. - Таргеты — текущее значение метрики
license_usageдля сущностиCONTROLLED_OBJECTS. - График «Количество КЕ / таргетов» — подсчёт количества значений метрики
up. Временной ряд; интервал задаётся в дашборде. - Общее количество уникальных метрик — подсчёт количества уникальных имён метрик
__name__. - Общее количество экспортеров — подсчёт количества уникальных значений label
jobпо метрикеup. - Активных тревог — подсчёт значений метрики
ALERTSв состоянииfiring. - Таблица «Экспортеры» — подсчёт количества таргетов по каждому exporter job на основе метрики
up. - Активные подключения к БД — суммарное значение метрики
pg_stat_activity_countсо состояниемactive. - Неактивные подключения к БД — суммарное значение метрики
pg_stat_activity_countсо состояниемidle. - Подключения к БД, ожидающие завершения транзакции — суммарное значение метрики
pg_stat_activity_countсо состояниемidle in transaction. - Количество блокировок БД — суммарное значение метрики
pg_locks_count. - Размер БД — суммарное значение метрики
sql_pg_relation_size.
Сервисы Памир (Группа)
Общая информация по группе сервисов Сторонние или Дополнительные.

Фильтр: группа сервисов
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
container_cpu_usage_seconds_total | Накопленное процессорное время контейнеров |
container_memory_working_set_bytes | Потребление памяти контейнерами |
container_state_status | Состояние контейнеров |
container_state_health_status | Health-check контейнеров |
Правила расчёта и агрегации:
- Потребление ЦПУ сервисами — сумма скоростей прироста метрики
container_cpu_usage_seconds_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - Потребление ОЗУ сервисами — сумма текущих значений метрики
container_memory_working_set_bytesс группировкой по сервису и переводом в МБ. Временной ряд; интервал задаётся в дашборде. - Таблица «Состояние сервисов» — текущие значения метрик
container_state_status,container_state_health_status.
Сервисы Памир (python)
Информация по python-сервису ПАМИР.

Фильтр: конкретная КЕ микросервиса
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
container_state_status | Состояние контейнера |
container_state_health_status | Health-check контейнера |
container_start_time_seconds | Время запуска контейнера |
container_cpu_usage_seconds_total | Накопленное процессорное время контейнера |
container_memory_working_set_bytes | Рабочая память контейнера |
process_resident_memory_bytes | RSS процесса |
process_virtual_memory_bytes | Виртуальная память процесса |
process_open_fds | Открытые файловые дескрипторы |
process_max_fds | Максимально допустимые файловые дескрипторы |
container_network_receive_bytes_total | Входящий сетевой трафик |
container_network_transmit_bytes_total | Исходящий сетевой трафик |
container_fs_reads_bytes_total | Чтение по файловой системе |
container_fs_writes_bytes_total | Запись по файловой системе |
python_gc_collections_total | Запуски сборщика мусора Python |
python_gc_objects_collected_total | Собранные GC объекты |
python_gc_objects_uncollectable_total | Несобираемые GC объекты |
Правила расчёта и агрегации:
- Статус сервиса — текущее значение метрики
container_state_statusдля состоянияrunning. - Здоровье сервиса — текущее значение метрики
container_state_health_statusдля состоянияhealthy. - UpTime — разность текущего времени и значения метрики
container_start_time_seconds. - Информация — атрибуты КЕ
number_of_nodes,version,vendor,project,maintainer. - Загрузка ЦПУ — сумма скоростей прироста метрики
container_cpu_usage_seconds_totalв окне 5m с группировкой по сервису, умноженная на 100 и округлённая до одного знака после запятой. - График «ЦПУ» — сумма скоростей прироста метрики
container_cpu_usage_seconds_totalв окне 5m с группировкой по сервису, умноженная на 100 и округлённая до одного знака после запятой. Временной ряд; интервал задаётся в дашборде. - Используется ОЗУ — сумма текущих значений метрики
container_memory_working_set_bytesс переводом в МБ. - График «ОЗУ» — сумма текущих значений метрики
container_memory_working_set_bytesс переводом в МБ. Временной ряд; интервал задаётся в дашборде. - RSS — текущее значение метрики
process_resident_memory_bytes. - Виртуальная память — текущее значение метрики
process_virtual_memory_bytes. - % Использования — отношение значения метрики
process_open_fdsкprocess_max_fds, умноженное на 100. - График «Входящий трафик» — сумма скоростей прироста метрики
container_network_receive_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Исходящий трафик» — сумма скоростей прироста метрики
container_network_transmit_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Загрузка I/O - чтение» — сумма скоростей прироста метрики
container_fs_reads_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Загрузка I/O - запись» — сумма скоростей прироста метрики
container_fs_writes_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Python-GC» — скорости прироста метрик
python_gc_collections_total,python_gc_objects_collected_total,python_gc_objects_uncollectable_totalв окне 5m. Временной ряд; интервал задаётся в дашборде.
Сервисы Памир (python, лицензия)
Информация по python-сервису ПАМИР с лицензионным блоком.

Фильтр: конкретная КЕ микросервиса
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
container_state_status | Состояние контейнера |
container_state_health_status | Health-check контейнера |
container_start_time_seconds | Время запуска контейнера |
container_cpu_usage_seconds_total | Накопленное процессорное время контейнера |
container_memory_working_set_bytes | Рабочая память контейнера |
license_usage | Использование лицензии |
license_allow | Разрешённый лимит лицензии |
license_overdraft | Допустимый овердрафт лицензии |
process_resident_memory_bytes | RSS процесса |
process_virtual_memory_bytes | Виртуальная память процесса |
process_open_fds | Открытые файловые дескрипторы |
process_max_fds | Максимально допустимые файловые дескрипторы |
container_network_receive_bytes_total | Входящий сетевой трафик |
container_network_transmit_bytes_total | Исходящий сетевой трафик |
container_fs_reads_bytes_total | Чтение по файловой системе |
container_fs_writes_bytes_total | Запись по файловой системе |
python_gc_collections_total | Запуски сборщика мусора Python |
python_gc_objects_collected_total | Собранные GC объекты |
python_gc_objects_uncollectable_total | Несобираемые GC объекты |
Правила расчёта и агрегации:
- Статус сервиса — текущее значение метрики
container_state_statusдля состоянияrunning. - Здоровье сервиса — текущее значение метрики
container_state_health_statusдля состоянияhealthy. - UpTime — разность текущего времени и значения метрики
container_start_time_seconds. - Информация — атрибуты КЕ
number_of_nodes,version,vendor,project,maintainer. - Загрузка ЦПУ — сумма скоростей прироста метрики
container_cpu_usage_seconds_totalв окне 5m с группировкой по сервису, умноженная на 100 и округлённая до одного знака после запятой. - График «ЦПУ» — сумма скоростей прироста метрики
container_cpu_usage_seconds_totalв окне 5m с группировкой по сервису, умноженная на 100 и округлённая до одного знака после запятой. Временной ряд; интервал задаётся в дашборде. - Используется ОЗУ — сумма текущих значений метрики
container_memory_working_set_bytesс переводом в МБ. - График «ОЗУ» — сумма текущих значений метрики
container_memory_working_set_bytesс переводом в МБ. Временной ряд; интервал задаётся в дашборде. - Используется — текущее значение метрики
license_usageв разрезе лицензируемой сущности. - Всего разрешено — текущее значение метрики
license_allowв разрезе лицензируемой сущности. - Овердрафт — текущее значение метрики
license_overdraftв разрезе лицензируемой сущности. - % Использования — отношение значения метрики
license_usageкlicense_allow, умноженное на 100. - RSS — текущее значение метрики
process_resident_memory_bytes. - Виртуальная память — текущее значение метрики
process_virtual_memory_bytes. - % Использования файловых дескрипторов — отношение значения метрики
process_open_fdsкprocess_max_fds, умноженное на 100. - График «Входящий трафик» — сумма скоростей прироста метрики
container_network_receive_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Исходящий трафик» — сумма скоростей прироста метрики
container_network_transmit_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Загрузка I/O - чтение» — сумма скоростей прироста метрики
container_fs_reads_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Загрузка I/O - запись» — сумма скоростей прироста метрики
container_fs_writes_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Python-GC» — скорости прироста метрик
python_gc_collections_total,python_gc_objects_collected_total,python_gc_objects_uncollectable_totalв окне 5m. Временной ряд; интервал задаётся в дашборде.
Сервисы Памир (Сторонние)
Информация по стороннему или дополнительному сервису.

Фильтр: конкретная КЕ типа Сторонние или Дополнительные
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
container_state_status | Состояние контейнера |
container_state_health_status | Health-check контейнера |
container_start_time_seconds | Время запуска контейнера |
container_cpu_usage_seconds_total | Накопленное процессорное время контейнера |
container_memory_working_set_bytes | Рабочая память контейнера |
container_network_receive_bytes_total | Входящий сетевой трафик |
container_network_transmit_bytes_total | Исходящий сетевой трафик |
container_fs_reads_bytes_total | Чтение по файловой системе |
container_fs_writes_bytes_total | Запись по файловой системе |
Правила расчёта и агрегации:
- Статус сервиса — текущее значение метрики
container_state_statusдля состоянияrunning. - Здоровье сервиса — текущее значение метрики
container_state_health_statusдля состоянияhealthy. - UpTime — разность текущего времени и значения метрики
container_start_time_seconds. - Информация — атрибуты КЕ
number_of_nodes,version,vendor,project,maintainer. - Загрузка ЦПУ — сумма скоростей прироста метрики
container_cpu_usage_seconds_totalв окне 5m с группировкой по сервису, умноженная на 100 и округлённая до одного знака после запятой. - График «ЦПУ» — сумма скоростей прироста метрики
container_cpu_usage_seconds_totalв окне 5m с группировкой по сервису, умноженная на 100 и округлённая до одного знака после запятой. Временной ряд; интервал задаётся в дашборде. - Используется ОЗУ — сумма текущих значений метрики
container_memory_working_set_bytesс переводом в МБ. - График «ОЗУ» — сумма текущих значений метрики
container_memory_working_set_bytesс переводом в МБ. Временной ряд; интервал задаётся в дашборде. - График «Входящий трафик» — сумма скоростей прироста метрики
container_network_receive_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Исходящий трафик» — сумма скоростей прироста метрики
container_network_transmit_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Загрузка I/O - чтение» — сумма скоростей прироста метрики
container_fs_reads_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде. - График «Загрузка I/O - запись» — сумма скоростей прироста метрики
container_fs_writes_bytes_totalв окне 5m с группировкой по сервису. Временной ряд; интервал задаётся в дашборде.
OpenSearch
Информация по OpenSearch.

Фильтр: отсутствует
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
elasticsearch_clusterinfo_up | Доступность кластера |
elasticsearch_cluster_health_status | Статус кластера |
elasticsearch_cluster_health_number_of_nodes | Количество нод |
elasticsearch_cluster_health_number_of_data_nodes | Количество data-нод |
elasticsearch_cluster_health_active_shards | Активные шарды |
elasticsearch_cluster_health_unassigned_shards | Не назначенные шарды |
elasticsearch_filesystem_data_available_bytes | Доступное место на data-диске |
elasticsearch_filesystem_data_size_bytes | Общий размер data-диска |
elasticsearch_jvm_memory_used_bytes | Используемая JVM-память |
elasticsearch_jvm_memory_max_bytes | Максимальная JVM-память |
elasticsearch_process_cpu_percent | Загрузка CPU процесса |
elasticsearch_indices_docs | Количество документов |
elasticsearch_indices_docs_deleted | Количество удаленных документов |
elasticsearch_indices_store_size_bytes | Размер индексов |
elasticsearch_indices_translog_size_in_bytes | Размер translog |
elasticsearch_indices_search_query_total | Счётчик поисковых запросов |
elasticsearch_indices_indexing_index_total | Счётчик операций индексации |
Правила расчёта и агрегации:
- Доступность кластера — текущее значение метрики
elasticsearch_clusterinfo_up. - Статус кластера — текущее значение метрики
elasticsearch_cluster_health_status, преобразованное в статусgreen / yellow / red. - Количество нод — максимальное значение метрики
elasticsearch_cluster_health_number_of_nodes. - Количество data-нод — максимальное значение метрики
elasticsearch_cluster_health_number_of_data_nodes. - Активные шарды — максимальное значение метрики
elasticsearch_cluster_health_active_shards. - Не назначенные шарды — максимальное значение метрики
elasticsearch_cluster_health_unassigned_shards. - Использование диска — отношение значения метрики
elasticsearch_filesystem_data_available_bytesкelasticsearch_filesystem_data_size_bytes, умноженное на 100. - Использовано — отношение значения метрики
elasticsearch_filesystem_data_available_bytesкelasticsearch_filesystem_data_size_bytes, умноженное на 100. - Использование JVM — отношение суммы метрики
elasticsearch_jvm_memory_used_bytesкelasticsearch_jvm_memory_max_bytes, умноженное на 100. - Использовано JVM — отношение суммы метрики
elasticsearch_jvm_memory_used_bytesкelasticsearch_jvm_memory_max_bytes, умноженное на 100. - Использовано CPU — текущее значение метрики
elasticsearch_process_cpu_percent. - График «Память JVM по областям» — текущие значения метрики
elasticsearch_jvm_memory_used_bytesв разрезе области JVM. Временной ряд; интервал задаётся в дашборде. - График «Использование CPU» — текущее значение метрики
elasticsearch_process_cpu_percent. Временной ряд; интервал задаётся в дашборде. - Документов всего — суммарное значение метрики
elasticsearch_indices_docs. - Удалённых документов — суммарное значение метрики
elasticsearch_indices_docs_deleted. - Размер индексов — суммарное значение метрики
elasticsearch_indices_store_size_bytes. - Размер translog — суммарное значение метрики
elasticsearch_indices_translog_size_in_bytes. - График «Поисковые запросы» — скорость прироста метрики
elasticsearch_indices_search_query_totalв окне 5m. Временной ряд; интервал задаётся в дашборде. - График «Индексация документов» — скорость прироста метрики
elasticsearch_indices_indexing_index_totalв окне 5m. Временной ряд; интервал задаётся в дашборде.
PostgreSQL
Информация по PostgreSQL ПАМИР.

Фильтр: конкретная КЕ PostgreSQL
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
pg_stat_activity_count | Количество клиентских сессий |
pg_settings_max_connections | Лимит соединений |
pg_stat_database_tup_fetched | Число извлечённых строк |
pg_stat_database_tup_inserted | Число вставленных строк |
pg_stat_database_tup_updated | Число обновлённых строк |
pg_stat_database_tup_deleted | Число удалённых строк |
pg_stat_database_tup_returned | Число возвращённых строк |
pg_stat_database_xact_commit | Число commit |
pg_stat_database_xact_rollback | Число rollback |
pg_locks_count | Активные блокировки |
pg_settings_maintenance_work_mem_bytes | Maintenance Work Mem |
pg_settings_work_mem_bytes | Work Mem |
pg_settings_seq_page_cost | Seq Page Cost |
pg_settings_max_worker_processes | Max Worker Processes |
pg_settings_shared_buffers_bytes | Shared Buffers |
pg_settings_max_wal_size_bytes | Max WAL Size |
pg_settings_effective_cache_size_bytes | Effective Cache |
pg_settings_random_page_cost | Random Page Cost |
sql_pg_relation_size | Размер таблиц |
Правила расчёта и агрегации:
- Версия — атрибут КЕ
version. - Current select data — суммарное значение метрики
pg_stat_database_tup_fetched. - Current update data — суммарное значение метрики
pg_stat_database_tup_updated. - Current insert data — суммарное значение метрики
pg_stat_database_tup_inserted. - Current delete data — суммарное значение метрики
pg_stat_database_tup_deleted. - Current return data — суммарное значение метрики
pg_stat_database_tup_returned. - Max Connections — отношение суммарного значения метрики
pg_stat_activity_countкpg_settings_max_connections, умноженное на 100. - Maintenance Work Mem — текущее значение метрики
pg_settings_maintenance_work_mem_bytes. - Work Mem — текущее значение метрики
pg_settings_work_mem_bytes. - Seq Page Cost — текущее значение метрики
pg_settings_seq_page_cost. - Max Worker Processes — текущее значение метрики
pg_settings_max_worker_processes. - Max Parallel Workers — текущее значение метрики
pg_settings_max_worker_processes. - Shared Buffers — текущее значение метрики
pg_settings_shared_buffers_bytes. - Max WAL Size — текущее значение метрики
pg_settings_max_wal_size_bytes. - Effective Cache — текущее значение метрики
pg_settings_effective_cache_size_bytes. - Random Page Cost — текущее значение метрики
pg_settings_random_page_cost. - График «Активные сессии» — текущее значение метрики
pg_stat_activity_countсо состояниемactive. Временной ряд; интервал задаётся в дашборде. - График «Неактивные сессии» — текущее значение метрики
pg_stat_activity_countсо состояниямиidle,idle in transaction,idle in transaction (aborted). Временной ряд; интервал задаётся в дашборде. - График «SELECT за 5 минут (DATA)» — текущее значение метрики
pg_stat_database_tup_fetched, округлённое до целого числа. Временной ряд; интервал задаётся в дашборде. - График «INSERT за 5 минут (DATA)» — разница между начальным и конечным значением счётчика
pg_stat_database_tup_insertedв окне 5m с последующим округлением до целого числа. Временной ряд; интервал задаётся в дашборде. - График «UPDATE за 5 минут (DATA)» — разница между начальным и конечным значением счётчика
pg_stat_database_tup_updatedв окне 5m с последующим округлением до целого числа. Временной ряд; интервал задаётся в дашборде. - График «DELETED за 5 минут (DATA)» — разница между начальным и конечным значением счётчика
pg_stat_database_tup_insertedв окне 5m с последующим округлением до целого числа. Временной ряд; интервал задаётся в дашборде. - График «RETURN за 5 минут (DATA)» — разница между начальным и конечным значением счётчика
pg_stat_database_tup_returnedв окне 5m с последующим округлением до целого числа. Временной ряд; интервал задаётся в дашборде. - График «Количество успешно завершенных транзакций за 5 минут» — разница между начальным и конечным значением счётчика
pg_stat_database_xact_commitв окне 5m с последующим округлением до целого числа. Временной ряд; интервал задаётся в дашборде. - График «Количество отмененных транзакций за 5 минут» — разница между начальным и конечным значением счётчика
pg_stat_database_xact_rollbackв окне 5m с последующим округлением до целого числа. Временной ряд; интервал задаётся в дашборде. - График «Количество активных блокировок» — текущее значение метрики
pg_locks_count. Временной ряд; интервал задаётся в дашборде. - Таблица «Размеры объектов» — текущие значения метрики
sql_pg_relation_sizeв разрезеtable_catalog,table_schema,table_name.
PostgreSQL (Vacuum & Freeze)
Информация по freeze horizon, vacuum и dead tuples.

Фильтр: конкретная КЕ PostgreSQL
Таблица сырых метрик, используемых виджетами дашборда
| Метрика | Описание |
|---|---|
sql_frozen_transaction | Freeze horizon и статистика vacuum по таблицам |
sql_dead_tuples | Live/dead tuples и параметры autovacuum |
sql_cleanup_analyze_stats | Vacuum и autovacuum по пользовательским таблицам |
sql_state_transactioncs | Количество клиентских сессий по состояниям |
Правила расчёта и агрегации:
- Возраст транзакций (MAX) — максимальное значение метрики
sql_frozen_transactionпо колонкеhorizon. - Количество операций вакуума (MAX) — максимальное значение метрики
sql_frozen_transactionпо колонкеmaint_count. - Время с последнего вакуума (MAX) — максимальное значение метрики
sql_frozen_transactionпо колонкеsince_last_maint. - Количество автовакуумов (MAX) — максимальное значение метрики
sql_dead_tuplesпо колонкеav_cnt. - Всего строк (MAX) — максимальное значение метрики
sql_dead_tuplesпо колонкеreltuples. - Количество live строк (MAX) — максимальное значение метрики
sql_dead_tuplesпо колонкеlive_tup. - Время с момента последнего автовакуума (MAX) — максимальное значение метрики
sql_dead_tuplesпо колонкеsince_last_av. - Количество dead строк (MAX) — максимальное значение метрики
sql_dead_tuplesпо колонкеdead_tup. - Порог автовакуума (MAX) — максимальное значение метрики
sql_dead_tuplesпо колонкеboundary. - Доля dead строк (MAX) — максимальное значение метрики
sql_dead_tuplesпо колонкеn_dead_ratio. - График «Connection States» — суммарное значение метрики
sql_state_transactioncsс группировкой по состоянию подключения. Временной ряд; интервал задаётся в дашборде. - График «Cleanup Stats» — сумма скоростей прироста метрики
sql_cleanup_analyze_statsв окне 5m отдельно дляvacuumиautovacuum. Временной ряд; интервал задаётся в дашборде. - Таблица «Frozen Transaction» — текущие значения метрики
sql_frozen_transactionпо колонкамhorizon,maint_count,since_last_maint. - Таблица «Dead Tuples» — текущие значения метрики
sql_dead_tuplesпо колонкамreltuples,live_tup,dead_tup,boundary,av_cnt,since_last_av,av_need,n_dead_ratio.
Файлы конфигурации
Решение по самомониторингу Памир устанавливается с помощью контент-пака self_monitoring.
Контент-пак содержит набор конфигурационных файлов, необходимых для развёртывания сервисно-ресурсной модели, шаблонов мониторинга, дашбордов, плана обогащения и экспортёров.
В рамках решения используются следующие конфигурационные файлы:
ci_types— описание типов КЕ, атрибутов и связей СРМ;templates— шаблоны TQL, VMAlert/HI и настройки jobs для мониторинга;dashboards— конфигурация дашбордов и виджетов;enrichment_plans— план обогащения для КЕ Памир;exporters— настройкиpostgres_exporterиsql_exporter.
Что хранится в каждом файле
| Файл | Назначение |
|---|---|
ci_types | описывает типы КЕ ПАМИР, PostgreSQL и табличной иерархии, а также правила построения связей |
templates | содержит TQL-шаблон ПАМИР и PostgreSQL, привязку jobs и индикаторов здоровья |
dashboards | определяет виджеты, их PromQL-запросы, layout и фильтры |
enrichment_plans | задаёт cron-расписание для обогащения КЕ Памир |
exporters | задаёт SQL-запросы для табличных метрик PostgreSQL и конфигурацию auth_module для postgres_exporter |