Необходимо провести анализ логов для выявление потенциальных проблем с базой данных
Самым современным и доступным решением является pgBadger. Программа представляет из себя один perl-script и легко устанавливается практически на любую операционную систему.
Ниже приведены шаги необходимые для использования программой.
Необходимо скачать программу с сайта разработчика:
wget https://github.com/downloads/dalibo/pgbadger/pgbadger-2.1.tar.gz
Распаковать архив в текущую папку:
tar -xzvf pgbadger-2.1.tar.gz
Настроить определенный формат логов PostgreSQL:
log_line_prefix = '%t [%p]: [%l-1] '
Настроить события, которые будут попадать в лог:
log_duration = on # Включает логирование запросов
log_min_duration_statement = 1 # Устанавливает минимальное время (в миллисекундах) выполнения запроса, который попадает в лог
log_checkpoints = on # В лог будет попадат информация о checkpoint'ах
log_connections = on # В лог будет попадать информация о новых подключениях к PostgreSQL
log_disconnections = on # В лог будет попадать информация об отключениях от PostgreSQL
log_lock_waits = on # В лог будет попадать информация о длительных ожиданиях сессий в попытке получить блокировку на объекте
log_temp_files = 0 # В лог будет попадать информация о временных файлах
Проинформировать PostgreSQL, что конфигурация была обновлена:
sudo service postgresql reload
"Натравить" pgBadger на лог PostgreSQL'а:
pgbadger -a 1 /var/log/postgresql/postgresql-9.1-main.log
Параметры -а 1 означают, что количественную статистику утилита будет отображать с детализацией в 1 минуту
Примечание
Для полноценного просмотра информации необходимо, чтобы компьютер, на котором будет открываться страница статистики, имел доступ в интернет.