Панель управления страницей pg_monitor

Эта страница содержит основные элементы управления и отображения модуля Advanced Analytics.

Панель навигации страницы pg_monitor

Нажав на кнопку «Open Advanced Analytics» («Открыть расширенную аналитику») в меню экземпляра, вы попадёте на главную страницу pg_monitor.

Рассмотрим элементы самой верхней панели, обведённой на рисунке выше (цифры в списке соответствуют цифрам на рисунке):

  1. Бургер-меню с сылками на основные категории проблемных запросов. Рядом с каждым пунктом стоит число - количество таких запросов для текущего экземпляра.

Бургер-меню содержит следующие пункты:

  • «Проблемные запросы» - все запросы к базе данных, оказывающие негативные эффекты на производительность, эффективность или надежность работы системы. Эти проблемы могут быть связаны с различными аспектами, такими как долгое выполнение запроса, высокая нагрузка на сервер базы данных, неоптимальные планы выполнения запросов и др.

  • Мегазапросы - запросы, превышающие 1МБ входящего или исходящего трафика:
  • Блокировки («lock») - механизмы, которые временно дают доступ к определенным ресурсам данных только одной транзакции, чтобы предотвратить одновременное изменение этих данных другими транзакциями. В случае неправильного использования блокировок может возникнуть взаимная блокировка («deadlock») - ситуация, когда две или более транзакции блокируют друг друга, ожидая освобождения ресурсов.

  • Ошибки - ситуации, когда запрос к базе данных не может быть выполнен из-за определённых проблем:
    • «FATAL» («Фатальная ошибка») - является критической и приводит к прерыванию выполнения запроса или транзакции. Фатальная ошибка может возникнуть,например, из-за отсутствия необходимых ресурсов или обращения к базе под несуществующей ролью.

    • «ERROR» («Ошибка») - можете привести к неудачному выполнению запроса, но она обычно менее критична, чем фатальная ошибка. Может быть вызвана, например, некорректными данными или попыткой выполнения операции без необходимых прав доступа.

    • «WARNING» («Предупреждение») - указывает на потенциальные проблемы или нежелательные события, но не прерывает выполнение запроса.

  • Блок «Системные дейстсвия» включает:
    • «PSA/PS» (pg_stat_activity) - система накопительной статистики для Postgres, собирающая информацию, связанную с текущей активностью данного процесса;

    • «Статистика по таблицам»;

    • «ANALYZE» - процесс сбора статистики по базам данных Postgres;

    • «VACUUM» - процесс, необходимый при обновлении или удалении записей таблицы для корректного чтения и учёта совершённых изменений. Он освобождает память, занятую «мёртвыми кортежами» - структурами данных, удаленными или устаревшими в результате обновления, которые физически не удаляются из таблицы без этого процесса. При различных параметрах VACUUM работает по-разному;

    • «CHECKPOINT» - «контрольные точки», расставляемые при вставке в таблицу большого количества записей или выполнении длинных транзакций. Они позволяют записывать большой объём данных «порциями» для того чтобы не нагружать дисковую систему. Эти порции могут распределяться как по объёму вставляемых данных, так и по временным интервалам вставки. Контрольные точки рассчитываются так, чтобы они не превышали «write buffers» - параметр, настраиваемый в конфигурации Postgres’а или регулируемый в настройках параметров операционной системы.

  1. IP-адрес сервера, на котором находится текущий экземпляр. Через «/» может быть указано название страницы, на которой вы находитесь.

  2. Панель выбора временного интервала для заданного дня. Она позволяет:

  • выбрать шаг для смешения временного интервала (1 секунда, 10 секунд, 30 секунд, 1 минута, 5 минут);

  • сместить временной интервал кнопками [<], [>]. Например, при выбранном шаге 5 мин (5m) оба значения границы временного участка получат модификатор +5 мин;

  • самостоятельно задать значения границ временного интервала, что можно сделать двумя способами:

    • введя значения в текстовые поля, в которые можно попасть, кликнув на время верхней или нижней границы интервала времени;

    • кликнув на текстовые поля и выбрав нужные значения часов, минут, или секунд ползунками.

  1. Фильтр для сортировки содержимого страницы по текстовым полям. В данном примере текстовыми полями являются столбцы «host/apname» и «query».

  2. Текущая дата. Её можно поменять, нажав на текстовое поле с датой и выбрав нужное число в календаре.

  1. Кнопка «Логи». Нажав на неё, вы откроете страницу анализатора логов.

Следующая панель, находящаяся чуть ниже, включает вкладки:

  1. PSA (pg_stat_activity) - в этой вкладке представлена информация по процессам - всем подключениям к базам данных в рамках этого экземпляра.

  2. PSA apps - конкретные приложения pg_stat_activity, которые обращаются к базе. В этой вкладке представлена информация по каждому приложению, поключенному к базам данных.

  3. PSA heatmap («тепловая карта») — встроенное в pg_stat_activity графическое представление данных, где индивидуальные значения в таблице отображаются при помощи цвета.

  4. pidstat (сокращение от Process ID Statistics) - утилита, используемая для мониторинга процессов БД в режиме реального время. Это инструментальное средство выдает различные статистические данные по процессу, в том числе об использовании процессора, об использовании процессом дискового пространства или о потоках, связанных с выбранными задачами и дочерними процессами.

  5. Счётчик процессов:

    • active - количество активных на данном сервере процессов.

    • idle - количество процессов, находящихся в неактивном состоянии.

    • wait - количество процессов, находящихся в состоянии ожидания.

    • всего - общее количество процессов на сервере, происходящих в течение периода, выбранного на панели временного интервала.

Далее рассмотрим по отдельности каждую ссылку и страницу.