Можно распаковать тарбол pgFouine или инсталлировать RPM-пакет.
Отредактируйте файл postgresql.conf (обычно находится в /var/lib/pgsql/data/), установив следующие директивы:
syslog = 2 log_min_duration_statement = n log_duration = false log_statement = false
syslog = 2 log_min_duration_statement = n log_duration = true log_statement = false
Затем отредактируйте /etc/syslog.conf для настройки возможностей PostgreSQL:
local0.* -/var/log/pgsql
Следует игнорировать способность PostgreSQL создавать лог-файл по умолчанию, иначе запросы будут протоколироваться дважды:
*.info;mail.none;authpriv.none;cron.none;local0.none /var/log/messages
Перезапустите syslogd и PostgreSQL.
Отредактируйте файл postgresql.conf (обычно находится в /var/lib/pgsql/data/), установив следующие директивы:
log_destination = 'syslog' redirect_stderr = off silent_mode = on
log_min_duration_statement = n log_duration = off log_statement = 'none'
Затем отредактируйте /etc/syslog.conf для настройки возможностей PostgreSQL:
local0.* -/var/log/pgsql
Следует игнорировать способность PostgreSQL создавать лог-файл по умолчанию, иначе запросы будут протоколироваться дважды:
*.info;mail.none;authpriv.none;cron.none;local0.none /var/log/messages
Перезапустите syslogd и PostgreSQL.
Можно фильтровать лог-файл по базе данных или пользователю параметрами -database и -user. Для этого нужно установить следующий log_line_prefix:
log_line_prefix = 'user=%u,db=%d'
Пользуясь указанным методом, можно направлять лог на stderr вместо syslog. Делать это не рекомендуется, так как не гарантируется цельность операторов, если они многострочные.
log_destination = 'stderr' redirect_stderr = on log_line_prefix = '%t [%p]: [%l-1] '
pgFouine - простой в использовании инструмент командной строки. Следующая команда создаёт HTML-отчёт со стандартными параметрами:
$ pgfouine.php -file your/log/file.log > your-report.html
С помощью этой строки можно отобразить текстовый отчёт с 10 запросами на каждый экран на стандартном выводе:
$ pgfouine.php -file your/log/file.log -top 10 -format text
На странице "Примеры отчетов" можно найти больше полезных примеров.
pgfouine.php -help поможет найти информацию об использовании.