Установка модуля анализа логов (Advanced analytics)

Создание ключей RSA

  1. Сгенерируйте ключи на сервере с Платформой:

ssh-keygen -t rsa

Примечание

При наличии старой пары ключей программа предложит их перезаписать.

  1. Скопируйте в нужные директории созданные ключи следующей командой:

cp /root/.ssh/id_rsa* /opt/tantor/eco/ssh/
  1. Скопируйте созданный публичный ключ на сервер базы данных, выполнив следующую команду:

ssh-copy-id -i /opt/tantor/eco/ssh/id_rsa [email protected]
  1. Проверьте возможность зайти на сервер базы данных с помощью добавленного ключа:

Настройка параметров postgresql.conf наблюдаемой СУБД

Для корректной работы модуля требуется установить следующие параметры в файле postgresql.conf:

# Настройки для  Advanced analytics
logging_collector = on
log_line_prefix = '%m [%p:%v] [%d] %r %a '
log_lock_waits = on
lc_messages = 'en_US.UTF-8'
auto_explain.log_analyze = on
auto_explain.log_buffers = on
track_io_timing = on
auto_explain.log_nested_statements = 'true'
# установить подходящее вам значение
deadlock_timeout = 1000ms
log_min_duration_statement = 10s
pg_store_plans.min_duration = 10s
auto_explain.log_min_duration = 10s
# Обязательное условие
log_filename = 'postgresql-%F.log'
# требуется минимально для сбора логов со стороны Advanced Analytics
log_destination = 'stderr'
# минимум none для показа ошибок
log_statement = 'none'
# Для СУБД типа PostgresPro вместо ‘pg_stat_statements , pg_store_plans’ указать pgpro_stats
shared_preload_libraries = 'pg_stat_statements, pg_store_plans, auto_explain'
# Настройки для  Advanced analytics end

Примечание

Возможно применить данные настройки с помощью модуля конфигурации платформы.

Конфигуратор сам подскажет вам рекомендуемые значения.

  1. Для корректной работы модуля требуется добавить следующее разрешение в файле pg_hba.conf:

    host    postgres        postgres        127.0.0.1/32            trust
    
  2. Чтобы новые параметры применились, выполните restart наблюдаемой СУБД.

  3. Для того, чтобы изменения вступили в силу, перезапустите контейнер, выполнив следующую команду на сервере Платформы:

    docker restart pg_monitor_collector