Я запускаю несколько сценариев PostgreSQL, которые раньше создавали чрезмерный вывод журнала. Мне удалось уменьшить большую часть вывода до приемлемого количества, передав --quiet
в качестве параметра для клиента командной строки psql и добавив SET client_min_messages='warning';
к началу моих сценариев SQL.
Это отлично работает для большинства основных операторов, таких как SELECT, INSERT, UPDATE и т.д.) Однако, когда я вызываю сохраненную функцию в сценарии, например, SELECT my_func(my_args);
, вывод журнала по-прежнему похож на
my_func
(здесь опущено длинное число со многими '-', потому что SF думает, что это заголовок)
(1 row)
Вывод бесполезен; это только заставляет меня долго прокручивать назад после запуска скрипта, а также значительно затрудняет обнаружение любых соответствующих ошибок.
Как мне от этого избавиться?
Либо
\o /dev/null
SELECT my_func(my_args);
или
SELECT my_func(my_args) \g /dev/null
Поскольку кажется, что вы запускаете скрипт из psql, вы можете сделать
copy ( select my_func(my_args) ) to stdout;
или даже
\copy ( select my_func(my_args) ) to /dev/null
Вы можете указать "-A -t" в командной строке psql, чтобы глобально уменьшить вывод всех операторов запроса в одну строку.