Устанавливаю в конфиге параметры:
log_connections = on
log_disconnection = on
После чего просто запускаю psql и больше ничего не делаю и постгрес начинает постоянно(каждую секунду) писать в лог записи типа:
2017-03-17 09:14:53.540 UTC (psql) [17746] postgres [00000]LOG: disconnection: session time: 0:00:00.005 user=postgres database=postgres host=localhost port=53641
2017-03-17 09:14:54.879 UTC ([unknown]) [17748] [unknown] [00000]LOG: connection received: host=localhost port=53644
2017-03-17 09:14:54.881 UTC ([unknown]) [17748] postgres [00000]LOG: connection authorized: user=postgres database=postgres
2017-03-17 09:14:54.885 UTC (psql) [17748] postgres [00000]LOG: disconnection: session time: 0:00:00.005 user=postgres database=postgres host=localhost port=53644
2017-03-17 09:14:55.316 UTC ([unknown]) [17750] [unknown] [00000]LOG: connection received: host=localhost port=53645
2017-03-17 09:14:55.316 UTC ([unknown]) [17750] postgres [00000]LOG: connection authorized: user=postgres database=postgres
2017-03-17 09:14:55.318 UTC (psql) [17750] postgres [00000]LOG: disconnection: session time: 0:00:00.001 user=postgres database=postgres host=localhost port=53645
2017-03-17 09:14:56.120 UTC ([unknown]) [17752] [unknown] [00000]LOG: connection received: host=localhost port=53646
2017-03-17 09:14:56.121 UTC ([unknown]) [17752] postgres [00000]LOG: connection authorized: user=postgres database=postgres
2017-03-17 09:14:56.122 UTC (psql) [17752] postgres [00000]LOG: disconnection: session time: 0:00:00.001 user=postgres database=postgres host=localhost port=53646
2017-03-17 09:14:57.481 UTC ([unknown]) [17755] [unknown] [00000]LOG: connection received: host=localhost port=53647
2017-03-17 09:14:57.482 UTC ([unknown]) [17755] postgres [00000]LOG: connection authorized: user=postgres database=postgres
2017-03-17 09:14:57.487 UTC (psql) [17755] postgres [00000]LOG: disconnection: session time: 0:00:00.006 user=postgres database=postgres host=localhost port=53647
2017-03-17 09:14:58.661 UTC ([unknown]) [17757] [unknown] [00000]LOG: connection received: host=localhost port=53648
2017-03-17 09:14:58.663 UTC ([unknown]) [17757] postgres [00000]LOG: connection authorized: user=postgres database=postgres
2017-03-17 09:14:58.665 UTC (psql) [17757] postgres [00000]LOG: disconnection: session time: 0:00:00.004 user=postgres database=postgres host=localhost port=53648
2017-03-17 09:14:59.150 UTC ([unknown]) [17759] [unknown] [00000]LOG: connection received: host=localhost port=53649
2017-03-17 09:14:59.151 UTC ([unknown]) [17759] postgres [00000]LOG: connection authorized: user=postgres database=postgres
2017-03-17 09:14:59.157 UTC (psql) [17759] postgres [00000]LOG: disconnection: session time: 0:00:00.007 user=postgres database=postgres host=localhost port=53649
Почему он постоянно переподключается?
Установили? statement_timeout
Установили?
statement_timeout = 0
Если да, то могу предположить, что ваша клиентская программа закрывает соединение, потому что сделала те дела, которые хотела сделать.
statement_timeout
statement_timeout закоментирован #statement_timeout = 0
значит стоит по умолчанию = 0
Все программы выключены, к базе никто не обращается. Просто запускаю psql начинается карусель в логе. Выхожу из psql в логе тишина.
Да и время сессии какоето подозрительно короткое, например - session time: 0:00:00.001
Попробуйте подключиться
Попробуйте подключиться другой программой (не psql) и сравните.
С остальными приложеними
С остальными приложеними такой проблемы не наблюдаю. Они запустиились есть лог конекта и все. А вот пользователь postgres из psql пишут и пишут в лог каждую милиссекунду(коннект и дисконект как в логе выше).
Значит это специфика работы
Значит это специфика работы psql. Предполагаю, что так эта утилита проверяет доступность сервера БД.
а зачем вы логируете
а зачем вы логируете коннекты/дисконнекты?
У нас есть проблемы с
У нас есть проблемы с приложением и хочется понимать как часто приложение подключается к БД и как долго висят сессии.
Может есть другой способ как єто мониторить?
Если єто специфика то какая то странная. Как только я включаю логирование логи забиваются записами от psql и лог растет до невероятных размеров.
Версия PostgreSQL 9.6
Интересно у кого то проблема воспроизводится?