| Тип: | integer |
| По умолчанию: | -1 (-1) |
| Минимальный: | -1 (-1) |
| Максимальный: | 2147483647 (2147483647ms) |
| Ед. изм: | milliseconds (ms) |
| Контекст: | superuser |
| Перезапуск: | false |
Записывает в журнал продолжительность выполнения всех команд, время работы которых равно или превышает указанное количество миллисекунд. Значение 0 (ноль) заставляет записывать продолжительность работы всех команд. Значение -1 (по умолчанию) запрещает регистрировать продолжительность выполнения операторов. Например, при значении 250ms, все команды, которые выполняются за 250 миллисекунд и дольше будут записаны в журнал сервера. Включение параметра полезно для выявления плохо оптимизированных запросов в приложении. Только суперпользователи могут изменить этот параметр.
Для клиентов, использующих расширенный протокол запросов, будет записываться продолжительность фаз: разбор, связывание и выполнение.
При использовании совместно с log_statement, текст SQL-операторов будет записываться только один раз (от использования log_statement) и не будет задублирован в сообщении о длительности выполнения. Если не используется вывод в syslog, то рекомендуется в log_line_prefix включить идентификатор процесса или сессии. Это позволит связать текст запроса с записью о продолжительности выполнения, которая появится позже.
Рекомендации [EN]
На StackOverflow
На pgsql-hackers
- Re: Doc update proposal for the note on log_statement in the runtime config for logging page
- Re: [PING] fallocate() causes btrfs to never compress postgresql files
- Re: Sample rate added to pg_stat_statements
- Re: query_id: jumble names of temp tables for better pg_stat_statement UX
- Re: Truncate logs by max_log_size
