Метрики запросов PostgreSQL для определенного диапазона времени (sql suration, количество выполнений и т. Д.) - PullRequest
0 голосов
/ 18 декабря 2018

Начну с того, что я новичок в PostgreSQL.Наше приложение много лет работало с Oracle и SQL Server, и сейчас мы предлагаем решение PostgreSQL.

Я пытаюсь создать запросы, которые будут предоставлять данные производительности SQL в течение определенного промежутка времени..Для Oracle я могу просто создать снимок до и после периода времени и запустить отчет AWR с этими идентификаторами снимка.В SQL Server 2016+ хранилище запросов имеет статистику времени выполнения, в которой хранятся метрики для отдельных запросов с временными метками, и из этого его можно легко запрашивать за необходимый мне временной интервал.

Что касается Postgres, я знаю оpg_stat_statements, но, насколько я могу судить, кажется, что он содержит данные, которые уже агрегированы (я хочу сделать свое собственное агрегирование).

Вариант использования такой: мы запускаем некоторый тест, нагрузочный тест дляпример.После теста я хочу получить показатели производительности запросов точно по времени теста (я могу делать снимки и метки времени до и после теста).Затем я хочу иметь возможность запускать запросы, используя эти снимки / временные метки, и говорить во время 1-часового нагрузочного теста, который выполнялся с 13:44:30 до 14:44:30. SELECT что-то из sometable запускался 50 раз со средней продолжительностью 10 мс,и т.д.

У нас есть PostgreSQL 10.6 и pg_stat_statements 1.6.

Спасибо, Том

...