Это старая версия документа!


Тестирование быстродействия системы

Данная инструкция предназначена для мониторинга производительности БД PostgreSQL, решение для Microsoft SQL Server отсутствует.

Мониторинг времени выполнения запросов в БД PostgreSQL осуществляется с помощью инструмента pgBadger. pgbadger – это анализатор журналов Postgres Pro/PostgreSQL, который быстро строит подробные отчёты, обрабатывая файлы журналов сервера.

Инструкция по установке pgBadger и мониторингу: 1. Установить pgBadger. Анализатор устанавливается на Linux-сервере БД PostgreSQL.

 sudo apt install pgbadger 

2. Настроить логирование.

log_line_prefix = '%t [%p]: [%l-1] '
log_statement = 'none'
log_min_duration_statement = 1
log_checkpoints = on
log_connections = on
log_disconnections = on
log_lock_waits = on
log_temp_files = 0
log_autovacuum_min_duration = 0
logging_collector = on
log_directory = '/var/log/postgresquerylog/'
log_filename = 'postgresql.log'
log_destination = 'csvlog,stderr'

log_min_duration_statement – параметр, который отвечает за попадание запросов длительностью более log_min_duration_statement секунд в лог для изучения инструментом pgBadger.

3. Создать папку для логов.

 mkdir -p /var/log/ 

4. Снять отчет.

 cat /rs-analyse/log/postgresql-2024-09-16*.log | grep -viE "create index|insert into analytics|vacuum analyze analytics" > /rs-analyse/log/pg_clean.log 

5. Сгенерировать html-файл.

 pgbadger -j 4  /rs-analyse/log/pg_clean.log 

Пример отчета:


  • 1 – возможность посмотреть Top запросов по времени выполнения;
  • 2 – главная страница отчёта с основной информацией;
  • 3 – возможность посмотреть список блокировок;
  • 4 – количество запросов, попавших в отчёт;
  • 5 – суммарное время выполнения всех запросов в отчёте;
  • 6 – время первого и последнего запроса, попавшего в отчёт.

Дополнительную информацию можно посмотреть на страницах: