Я использую SELECT current_query FROM pg_stat_activity;, чтобы увидеть текущие запросы, но я заметил, что запрос урезан Есть ли обходной путь или какой-либо другой способ увидеть выполняемые в данный момент запросы?
SELECT current_query FROM pg_stat_activity;
PostgreSQL 8.4 добавляет параметр "track_activity_query_size". Значение будет по-прежнему усечено, но вы можете контролировать его длину.
track_activity_query_size
ALTER SYSTEM SET track_activity_query_size = 16384;
Вам все равно нужно будет перезапустить службу, чтобы она вступила в силу
Альтернативой в крайнем случае является использование отладчика gdb для подключения к процессу и распечатки запроса.
См. http://darthanthony.wordpress.com/2012/10/11/viewing-running-postgres-queries-and-what-if-they-are-too-long/
gdb [path_to_postgres] [pid] printf "%s\n", debug_query_string
Вы можете просто включить ведение журнала операторов в postgresql (log_statement) и проверить журналы.
Кажется, я не могу найти простое решение для этого, но в этом посте 2002 года вам нужно изменить настройки и перекомпилировать: http://osdir.com/ml/db.postgresql.sql/2002-05/msg00088.html