Просмотр логов кластера PostgreSQL
Managed Service for PostgreSQL позволяет получить фрагмент логов кластера за выбранный период и просматривать логи в реальном времени.
Примечание
Логи кластера хранятся 30 дней.
Получить лог кластера
- Перейдите на страницу каталога и выберите сервис Managed Service for PostgreSQL.
- Нажмите на имя нужного кластера и выберите вкладку
Логи. - Укажите период времени, за который нужно отобразить логи: введите его вручную или выберите в календаре, нажав на поле ввода дат.
- При необходимости запросите лог
POOLER
, укажите хосты и уровень логирования в выпадающих списках рядом с полем ввода дат.
Будет отображен список записей в логе за выбранный период времени. Чтобы посмотреть подробную информацию о событии, нажмите на интересующую запись в списке.
Если записей слишком много и отображается только часть из них, нажмите на ссылку Загрузить еще в конце списка.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
-
Просмотрите описание команды CLI для просмотра логов кластера:
yc managed-postgresql cluster list-logs --help
-
Запустите команду получения логов кластера (в примере приведены не все доступные параметры):
yc managed-postgresql cluster list-logs <имя_или_идентификатор_кластера> \ --limit <ограничение_количества_записей> \ --format <формат_вывода> \ --service-type <тип_сервиса> \ --columns <список_колонок_для_вывода_информации> \ --filter <настройки_фильтрации_записей> \ --since <левая_граница_временного_диапазона> \ --until <правая_граница_временного_диапазона>
Где:
-
--limit
— ограничение на количество выводимых записей. -
--format
— формат, в котором будут представлены записи логов (text
,yaml
,json
илиjson-rest
). -
--service-type
— тип сервиса, для которого требуется вывести записи (postgresql
илиpooler
). -
--columns
— список колонок для вывода информации:hostname
— имя хоста.db
— имя базы данных.level
— уровень логирования, например,info
.pid
— идентификатор серверного процесса текущей сессии.text
— сообщение, которое выводит компонент.
Примечание
В примере приведены только основные колонки. Список выводимых колонок зависит от выбранного типа сервиса
--service-type
.Для вывода отдельных колонок передайте ключ
--format
с указанием формата вывода (yaml
,json
илиjson-rest
). Колонки не поддерживаются для формата выводаtext
(установлен по умолчанию). -
--filter
— настройки фильтрации записей, например,message.hostname='node1.mdb.yandexcloud.net'
. -
--since
— левая граница временного диапазона в формате RFC-3339 ,HH:MM:SS
или временного промежутка относительно текущего времени. Примеры:2006-01-02T15:04:05Z
,15:04:05
,2h
,3h30m ago
. -
--until
— правая граница временного диапазона, формат аналогичен--since
.
-
Имя и идентификатор кластера можно запросить со списком кластеров в каталоге.
Чтобы получить лог кластера, воспользуйтесь методом REST API listLogs для ресурса Cluster или вызовом gRPC API ClusterService/ListLogs и передайте в запросе:
-
Идентификатор кластера в параметре
clusterId
.Чтобы узнать идентификатор кластера, получите список кластеров в каталоге.
-
Тип сервиса, логи которого вы запрашиваете, в параметре
serviceType
:POSTGRESQL
— логи операций PostgreSQL.POOLER
— логи операций менеджера подключений.
Получить поток логов кластера
Этот способ позволяет получать логи кластера в реальном времени.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Для просмотра логов кластера по мере их поступления выполните команду:
yc managed-postgresql cluster list-logs <имя_или_идентификатор_кластера> --follow
Имя и идентификатор кластера можно запросить со списком кластеров в каталоге.
Чтобы получить поток логов кластера, воспользуйтесь методом REST API streamLogs для ресурса Cluster или вызовом gRPC API ClusterService/StreamLogs и передайте в запросе:
-
Идентификатор кластера в параметре
clusterId
.Чтобы узнать идентификатор кластера, получите список кластеров в каталоге.
-
Тип сервиса, логи которого вы запрашиваете, в параметре
serviceType
:POSTGRESQL
— логи операций PostgreSQL.POOLER
— логи операций менеджера подключений.