Мониторинг производительности запросов Postgres на производственных серверах

Моя цель здесь состоит в том, чтобы идентифицировать медленные запросы, что можно сделать с помощью медленных журналов запросов, т.е. увеличить время ожидания в postgresql.conf до примерно 100 мс (приемлемое время запроса), а затем идентифицировать медленные запросы.

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

Это требует pg_stat_statements расширение, которое должно вызвать 10% снижения производительности сервера, отсюда, пост в блоге довольно старый, и все могло бы улучшиться.

Мои вопросы

  • Я не смог найти какой-либо авторитетный источник о том, как влияние на производительность будет иметь расширение pg_stat_statemtents. Это незначительное в последних версиях?
  • Если это действительно влияет на производительность, будет ли достаточно сделать резервную копию / экспортировать системные таблицы, необходимые для pg_stat_statements, а затем проанализировать их в автономном режиме на отдельной машине, возможно, есть ли расширение / модуль, который делает это автоматически
  • Любые альтернативные решения также приветствуются

0 ответов

Другие вопросы по тегам