Странные проблемы с pg_query_stats на v11 для драгоценного камня pg_hero - PullRequest
0 голосов
/ 01 мая 2020

Я пытаюсь включить статистику запросов на своем сервере для использования с гемом pg_hero Rails. Я делаю следующее:

Сначала я настроил сборщик в postgresql .conf, надеясь, что он загрузится автоматически:

track_activities = on
track_counts = on
track_io_timing = off
track_functions = none
track_activity_query_size = 1024
stats_temp_directory = 'pg_stat_tmp'

Расширение не загружается автоматически, возможно, эта конфигурация не ' ничего не делай. Так или иначе, тогда я делаю:

# create the extension
# CREATE extension pg_stat_statements;
postgres                 | /usr/local/bin/docker-entrypoint.sh: running /docker-entrypoint-initdb.d/create_pg_stats.sh
postgres                 | CREATE EXTENSION

, который, кажется, работает, без ошибок. Затем я пытаюсь предоставить привилегии пользователю:

postgres                 | 2020-05-01 14:05:27.533 UTC [154] STATEMENT:  GRANT EXECUTE ON FUNCTION pg_stat_statements_reset() TO ro;
postgres                 | ERROR:  function pg_stat_statements_reset() does not exist
postgres                 |   Granting read only privileges on 'entertastic_test' to ro

Не уверен, как функция не существует, когда я только что создал расширение? В любом случае, сервер затем падает:

postgres                 | 2020-05-01 14:18:21.206 UTC [31] LOG:  could not open temporary statistics file "pg_stat_tmp/global.tmp": No such file or directory
postgres                 | 2020-05-01 14:18:21.259 UTC [1] LOG:  could not open file "postmaster.pid": No such file or directory
postgres                 | 2020-05-01 14:18:21.259 UTC [1] LOG:  performing immediate shutdown because data directory lock file is invalid
postgres                 | 2020-05-01 14:18:21.259 UTC [1] LOG:  received immediate shutdown request
postgres                 | 2020-05-01 14:18:21.259 UTC [1] LOG:  could not open file "postmaster.pid": No such file or directory
postgres                 | 2020-05-01 14:18:21.261 UTC [31] LOG:  could not open temporary statistics file "pg_stat/global.tmp": No such file or directory
postgres                 | 2020-05-01 14:18:21.262 UTC [30] WARNING:  terminating connection because of crash of another server process
postgres                 | 2020-05-01 14:18:21.262 UTC [30] DETAIL:  The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
postgres                 | 2020-05-01 14:18:21.262 UTC [30] HINT:  In a moment you should be able to reconnect to the database and repeat your command.
postgres                 | 2020-05-01 14:18:21.268 UTC [1] LOG:  could not write pg_stat_statement file "pg_stat/pg_stat_statements.stat.tmp": No such file or directory
postgres                 | 2020-05-01 14:18:21.286 UTC [1] LOG:  database system is shut down

У него есть все привилегии для каталога данных, поэтому не уверен, почему он не создает файл / не обращается к нему.

Работает ли этот материал вообще? Я что-то не так делаю?

1 Ответ

0 голосов
/ 08 мая 2020

Похоже, ваш сервер выходит из строя, потому что он не может найти вашу временную директорию статистики. Он установлен с помощью этого параметра:

stats_temp_directory = 'pg_stat_tmp'

И это будет относительно вашего каталога PGDATA.

Пожалуйста, проверьте, существует ли этот каталог.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...