pg_stat_statements (к счастью) довольно умен в нормализации запросов для агрегирования статистики независимо от передаваемых вами аргументов.Однако я сталкиваюсь с ситуацией, когда конкретный запрос вызывается из разных мест нашего приложения, и я хотел бы получить отдельную статистику, основанную на этих разных местах.Вдохновленный библиотекой Marginalia , я попытался добавить комментарии SQL для аннотирования запроса.К сожалению, это не работает.См. Этот пример:
SELECT * FROM users WHERE email = 'a@b.c' /* action: signup */
SELECT * FROM users WHERE email = 'x@y.z' /* action: login */
В результате pg_stat_statements сохраняет нормализованное представление запроса с первым замечанием, которое он видит:
SELECT * FROM users WHERE email = $1 /* action: signup */
Затем, если я вызываю тот же запрос сразличные комментарии (или вообще никаких комментариев), статистика будет объединена в один и тот же элемент.Комментарии фактически игнорируются в нормализованном представлении запроса.
Есть ли способ вызвать эквивалентные запросы SQL, но отслеживаются ли они отдельно с помощью pg_stat_statements?