powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как из информации выдаваемой pg_stat_replication узнать название публикации
7 сообщений из 7, страница 1 из 1
Как из информации выдаваемой pg_stat_replication узнать название публикации
    #40130592
Dmitry_tdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня на сервере N баз данных, у каждой есть своя публикация, а то и несколько.
Требуется организовать мониторинг по конкретно указанной базе или публикации

Название подписки получаю, но на мастере мне это ну совсем не интересно, а вот название публикации то как получить для которой была эта подписка?
...
Рейтинг: 0 / 0
Как из информации выдаваемой pg_stat_replication узнать название публикации
    #40130625
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как из информации выдаваемой pg_stat_replication узнать название публикации
    #40130626
Dmitry_tdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Melkij, может я не совсем понятно написал.
Речь идет о мастере и соответственно подписок там нет.
Можно запросить список публикаций через pg_publication, но связать этот список с информацией которая выдается pg_stat_replication у меня не получилось.
При этом, на мой взгляд, абсолютно бесполезное на мастере поле application_name в ответе есть(это фактически название подписки на slave'е), а вот очень нужного поля с названием публикации к которой подключена данная подписка - нет.
...
Рейтинг: 0 / 0
Как из информации выдаваемой pg_stat_replication узнать название публикации
    #40130627
Guzya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В pg_replication_slots есть БД.

Еще такое можно

Код: sql
1.
2.
    -- Слоты логической репликации с процессами репликации. Если pid пустой, рпликация не идет
    select repl.*,slot.* from pg_replication_slots slot left join pg_stat_replication repl on slot.active_pid=repl.pid where slot.slot_type='logical'\gx
...
Рейтинг: 0 / 0
Как из информации выдаваемой pg_stat_replication узнать название публикации
    #40130630
Dmitry_tdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Guzya, спасибо.
С базой статистику связать удалось, хорошо, что в проекте используется логическая репликация, а вот с публикацией как это сделать?
...
Рейтинг: 0 / 0
Как из информации выдаваемой pg_stat_replication узнать название публикации
    #40130661
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry_tdv
Guzya, спасибо.
С базой статистику связать удалось, хорошо, что в проекте используется логическая репликация, а вот с публикацией как это сделать?


Публикация никак на источнике вообще с слотом на источнике же не связана.
Могут быть слоты репликации не привязанные к публикации, могут быть публикации без слота.
И так далее, т.е. такая связь существует только на подписчике (и только он её знает), и это можно на подписчике изменить так что мастер и не узнает по сути.

И соответственно накопление wal в слоте однозначно с конкретной публикацией не может быть связанно используя информацию только на мастере.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
Как из информации выдаваемой pg_stat_replication узнать название публикации
    #40130682
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry_tdv
Melkij, может я не совсем понятно написал.
Речь идет о мастере и соответственно подписок там нет.
Можно запросить список публикаций через pg_publication, но связать этот список с информацией которая выдается pg_stat_replication у меня не получилось.
При этом, на мой взгляд, абсолютно бесполезное на мастере поле application_name в ответе есть(это фактически название подписки на slave'е), а вот очень нужного поля с названием публикации к которой подключена данная подписка - нет.

Да, неверно понял.
pgoutput на стороне публикации, конечно, имеет соответствующий список publication_names под рукой, но никуда этот список не экспортируется на уровень SQL. Т.к. это частная деталь реализации pgoutput плагина logical decoding

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


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