powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Трассировка сессий в Postgresql
4 сообщений из 4, страница 1 из 1
Трассировка сессий в Postgresql
    #39759655
BigBudda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Наткнулся на статью, где описывается трассировка сессий в Postgresql.
http://pavelluzanov.blogspot.com/2016/03/blog-post_15.html
Попытался воспроизвести. Возникли вопросы:

1. "Чтобы включить трассировку нужно знать <PID> серверного процесса, к которому нужно подключиться"
Тут сразу возникла трудность идентифицировать свой PID. Все запросы к БД идут с сервера приложений Apache Tomcat.
Когда я смотрю сессии в БД или процессы на сервере через ps -aef|grep postgres, то их там туча. В том числе много активных.
Нашёл в итоге, но это потребовало времени.

2. выполнить следующие действия: ALTER SYSTEM SET log_statement_stats TO on;kill -s HUP <PID>
Тут возникает вопрос: а новые бэкенды, которые будут возникать, они будут уже с новыми параметрами или со старыми?
И хотелось бы свою трассировку вывести в отдельный файл, чтобы не в общей куче логов искать то, что мне нужно.
Пробовал так:
Код: plsql
1.
2.
postgres=# ALTER SYSTEM SET log_directory='/home/postgresql/trace'
postgres-# ALTER SYSTEM SET log_filename='trace.log'


Выполнял после этого kill -s HUP <PID>, но лог не формировался.

14 февраля выйдет Postgresql 11.2. Кто знает, в плане трассировки сессий есть какие-то новшества? Или быть может они заложены в 12 версию?
...
Рейтинг: 0 / 0
Трассировка сессий в Postgresql
    #39759666
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BigBudda1. "Чтобы включить трассировку нужно знать <PID> серверного процесса, к которому нужно подключиться"
Тут сразу возникла трудность идентифицировать свой PID. Все запросы к БД идут с сервера приложений Apache Tomcat.
Когда я смотрю сессии в БД или процессы на сервере через ps -aef|grep postgres, то их там туча. В том числе много активных.
Нашёл в итоге, но это потребовало времени.
ну а как вы хотите найти pid ещё? Придумайте какие-то критерии как искать.

BigBuddaТут возникает вопрос: а новые бэкенды, которые будут возникать, они будут уже с новыми параметрами или со старыми?
Зависит от того, кому именно HUP пошлёте. Если одному конкретному backend - это никак не затронет остальных.
Если мастеру - он перешлёт сигнал всем детям и новые процессы будет создавать тоже с актуальными параметрами.

BigBudda
Код: plsql
1.
2.
postgres=# ALTER SYSTEM SET log_directory='/home/postgresql/trace'
postgres-# ALTER SYSTEM SET log_filename='trace.log'


Выполнял после этого kill -s HUP <PID>, но лог не формировался.
Раз хотите, чтобы что-то менялось - запрос надо не только написать, но и всё-таки отправить его базе на выполнение.

BigBudda14 февраля выйдет Postgresql 11.2. Кто знает, в плане трассировки сессий есть какие-то новшества?
Гарантированно нет. Никаких новых фич в минорных релизах.

BigBuddaИли быть может они заложены в 12 версию?
Не видел таковых коммитов. Впрочем начать стоит с того, что вы вообще подразумеваете под "трассировкой".
...
Рейтинг: 0 / 0
Трассировка сессий в Postgresql
    #39759679
jan2ary
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BigBudda,

Постгрес поддерживает системные трассировки DTrace, а также SystemTap.
Смотрите Dynamic Tracing
...
Рейтинг: 0 / 0
Трассировка сессий в Postgresql
    #39759707
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BigBudda,

log_directory вы не смените для 1 процесса, лог пишется централизованно через выделенный специальный процесc
и заставить разные процессы базы писать в разные логи невозможно (и возможно не будет в ближайшие пару лет точно).

Остальное - вам уже ответили.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Трассировка сессий в Postgresql
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]