Перейти к содержанию

PICO_LOG_LEVEL

Скалярная функция pico_log_level возвращает текущий уровень важности событий, регистрируемых в отладочном журнале инстанса, на котором выполняется запрос. Результат имеет тип TEXT.

Функция учитывает изменения уровня через команду ALTER SYSTEM SET LOCAL. Поэтому результат может отличаться от значения instance.log.level, заданного при запуске инстанса.

Функцию можно вызывать в списке возвращаемых значений после SELECT, в том числе без FROM: SELECT pico_log_level();. Непосредственные вызовы в WHERE, JOIN ... ON, GROUP BY и ORDER BY не поддерживаются.

Функция доступна всем пользователям и не требует привилегий администратора.

Синтаксис

PICO_LOG_LEVEL ( )

Функция вызывается без аргументов.

Примеры

Получить текущий уровень журналирования:

SELECT pico_log_level();

При стандартной конфигурации функция вернет строку 'info'. Все возможные уровни и их числовые значения можно получить с помощью PICO_LOG_LEVEL_MAP.

Изменить уровень журналирования и проверить результат:

ALTER SYSTEM SET LOCAL log_level = 'debug';
SELECT pico_log_level();

Функция вернет строку 'debug'. Изменение действует только на инстансе, на котором выполнена команда, и не сохраняется после его перезапуска. Для изменения уровня требуются привилегии администратора СУБД.

Восстановить уровень, заданный при запуске инстанса:

ALTER SYSTEM RESET LOCAL log_level;
SELECT pico_log_level();

Сброс также требует привилегий администратора СУБД. Функция вернет восстановленное значение instance.log.level.