Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for MongoDB
  • Начало работы
    • Все инструкции
      • Просмотр логов кластера
      • Диагностика производительности
      • Инструменты для анализа производительности
      • Мониторинг состояния кластера и хостов
  • Управление доступом
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Обучающие курсы

В этой статье:

  • Получить лог кластера
  • Получить поток логов кластера
  1. Пошаговые инструкции
  2. Логи и мониторинг
  3. Просмотр логов кластера

Просмотр логов кластера MongoDB

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 21 апреля 2025 г.
  • Получить лог кластера
  • Получить поток логов кластера

Managed Service for MongoDB позволяет получить фрагмент логов кластера за выбранный период и просматривать логи в реальном времени.

Примечание

Логи кластера хранятся 30 дней.

Получить лог кластераПолучить лог кластера

Консоль управления
CLI
REST API
gRPC API
  1. Перейдите на страницу каталога и выберите сервис Managed Service for MongoDB.
  2. Нажмите на имя нужного кластера и выберите вкладку Логи.
  3. Укажите период времени, за который нужно отобразить логи: введите его вручную или выберите в календаре, нажав на поле ввода дат.
  4. При необходимости укажите хосты и уровень логирования в строке с полем ввода дат.

Будет отображен список записей в логе за выбранный период времени. Чтобы посмотреть подробную информацию о событии, нажмите на интересующую запись в списке.

Если записей слишком много и отображается только часть из них, нажмите на кнопку Загрузить еще в конце списка.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

  1. Просмотрите описание команды CLI для просмотра логов кластера:

    yc managed-mongodb cluster list-logs --help
    
  2. Запустите команду получения логов кластера (в примере приведены не все доступные параметры):

    yc managed-mongodb cluster list-logs <имя_или_идентификатор_кластера> \
       --limit <ограничение_количества_записей> \
       --service-type <тип_сервиса> \
       --columns <список_колонок_для_вывода_информации> \
       --filter <настройки_фильтрации_записей> \
       --since <левая_граница_временного_диапазона> \
       --until <правая_граница_временного_диапазона>
    

    Где:

    • --limit — ограничение на количество выводимых записей.

    • --service-type — тип сервиса, для которого требуется вывести записи (mongod, mongos, mongocfg или audit).

    • --columns — список колонок для вывода информации:

      • component — тип компонента, который попадет в лог. Например, CONTROL.
      • context — имя исполняемого модуля, например, signalProcessingThread.
      • hostname — имя хоста.
      • message — сообщение, которое выводит компонент.
      • severity — уровень логирования, например, I или W (Info и Warning соответственно).

      Примечание

      Список выводимых колонок зависит от выбранного типа сервиса --service-type.

    • --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.

Имя и идентификатор кластера можно запросить со списком кластеров в каталоге.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Воспользуйтесь методом Cluster.ListLogs и выполните запрос, например, с помощью cURL:

    curl \
        --request GET \
        --header "Authorization: Bearer $IAM_TOKEN" \
        --url 'https://mdb.api.cloud.yandex.net/managed-mongodb/v1/clusters/<идентификатор_кластера>:logs' \
        --url-query serviceType=<тип_сервиса> \
        --url-query columnFilter=<список_колонок> \
        --url-query fromTime=<левая_граница_временного_диапазона> \
        --url-query toTime=<правая_граница_временного_диапазона>
    

    Где:

    • serviceType — тип сервиса, логи которого нужно получить:

      • MONGOD — лог операций MongoDB.
      • AUDIT — лог аудита.
    • columnFilter — список колонок для вывода информации:

      • hostname — имя хоста.
      • component — тип компонента, который попадет в лог. Например, HTTP-Session.
      • message — сообщение, которое выводит компонент.
      • query_id — идентификатор запроса.
      • severity — уровень логирования, например, Debug.
      • thread — идентификатор потока, участвующего в обработке запросов.

      В одном параметре columnFilter можно указать только одну колонку. Если необходимо отфильтровать логи по нескольким колонкам, передайте перечень нужных колонок в нескольких параметрах.

      • fromTime — левая граница временного диапазона в формате RFC-3339. Пример: 2006-01-02T15:04:05Z.
      • toTime — правая граница временного диапазона, формат аналогичен fromTime.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  3. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом ClusterService.ListLogs и выполните запрос, например, с помощью gRPCurl:

    grpcurl \
      -format json \
      -import-path ~/cloudapi/ \
      -import-path ~/cloudapi/third_party/googleapis/ \
      -proto ~/cloudapi/yandex/cloud/mdb/mongodb/v1/cluster_service.proto \
      -rpc-header "Authorization: Bearer $IAM_TOKEN" \
      -d '{
            "cluster_id": "<идентификатор_кластера>",
            "service_type": "<тип_сервиса>",
            "column_filter": [
              "<колонка_1>", "<колонка_2>", ..., "<колонка_N>"
            ],
            "from_time": "<левая_граница_временного_диапазона>",
            "to_time": "<правая_граница_временного_диапазона>"
          }' \
      mdb.api.cloud.yandex.net:443 \
      yandex.cloud.mdb.mongodb.v1.ClusterService.ListLogs
    

    Где:

    • service_type — тип сервиса, логи которого нужно получить:

      • MONGOD — лог операций MongoDB.
      • AUDIT — лог аудита.
    • column_filter — список колонок для вывода информации:

      • hostname — имя хоста.
      • component — тип компонента, который попадет в лог. Например, HTTP-Session.
      • message — сообщение, которое выводит компонент.
      • query_id — идентификатор запроса.
      • severity — уровень логирования, например, Debug.
      • thread — идентификатор потока, участвующего в обработке запросов.

      В параметре column_filter можно указать несколько колонок, если нужно отфильтровать логи по нескольким колонкам.

      • from_time — левая граница временного диапазона в формате RFC-3339. Пример: 2006-01-02T15:04:05Z.
      • to_time — правая граница временного диапазона, формат аналогичен from_time.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Получить поток логов кластераПолучить поток логов кластера

Этот способ позволяет получать логи кластера в реальном времени.

CLI
REST API
gRPC API

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Для просмотра логов кластера по мере их поступления выполните команду:

yc managed-mongodb cluster list-logs <имя_или_идентификатор_кластера> --follow

Имя и идентификатор кластера можно запросить со списком кластеров в каталоге.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Воспользуйтесь методом Cluster.StreamLogs и выполните запрос, например, с помощью cURL:

    curl \
        --request GET \
        --header "Authorization: Bearer $IAM_TOKEN" \
        --url 'https://mdb.api.cloud.yandex.net/managed-mongodb/v1/clusters/<идентификатор_кластера>:stream_logs' \
        --url-query serviceType=<тип_сервиса> \
        --url-query columnFilter=<список_колонок> \
        --url-query fromTime=<левая_граница_временного_диапазона> \
        --url-query toTime=<правая_граница_временного_диапазона> \
        --url-query filter=<фильтр_логов>
    

    Где:

    • serviceType — тип сервиса, логи которого нужно получить:

      • MONGOD — лог операций MongoDB.
      • AUDIT — лог аудита.
    • columnFilter — список колонок для вывода информации:

      • hostname — имя хоста.
      • component — тип компонента, который попадет в лог. Например, HTTP-Session.
      • message — сообщение, которое выводит компонент.
      • query_id — идентификатор запроса.
      • severity — уровень логирования, например, Debug.
      • thread — идентификатор потока, участвующего в обработке запросов.

      В одном параметре columnFilter можно указать только одну колонку. Если необходимо отфильтровать логи по нескольким колонкам, передайте перечень нужных колонок в нескольких параметрах.

      • fromTime — левая граница временного диапазона в формате RFC-3339. Пример: 2006-01-02T15:04:05Z.
      • toTime — правая граница временного диапазона, формат аналогичен fromTime.
    • filter — фильтр логов. Можно отфильтровать логи так, чтобы поток логов содержал только нужные логи.

      Подробнее о фильтрах и их синтаксисе см. в справочнике API.

      Совет

      Фильтр может содержать в себе кавычки и другие символы. Экранируйте их, если это необходимо.

      Поддерживаемые фильтры:

      • message.hostname — фильтрация по имени хоста.
      • message.severity — фильтрация по уровню логирования.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  3. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом ClusterService.StreamLogs и выполните запрос, например, с помощью gRPCurl:

    grpcurl \
      -format json \
      -import-path ~/cloudapi/ \
      -import-path ~/cloudapi/third_party/googleapis/ \
      -proto ~/cloudapi/yandex/cloud/mdb/mongodb/v1/cluster_service.proto \
      -rpc-header "Authorization: Bearer $IAM_TOKEN" \
      -d '{
            "cluster_id": "<идентификатор_кластера>",
            "service_type": "<тип_сервиса>",
            "column_filter": [
              "<колонка_1>", "<колонка_2>", ..., "<колонка_N>"
            ],
            "from_time": "<левая_граница_временного_диапазона>",
            "to_time": "<правая_граница_временного_диапазона>",
            "filter": "<фильтр_логов>"
          }' \
      mdb.api.cloud.yandex.net:443 \
      yandex.cloud.mdb.mongodb.v1.ClusterService.StreamLogs
    

    Где:

    • service_type — тип сервиса, логи которого нужно получить:

      • MONGOD — лог операций MongoDB.
      • AUDIT — лог аудита.
    • column_filter — список колонок для вывода информации:

      • hostname — имя хоста.
      • component — тип компонента, который попадет в лог. Например, HTTP-Session.
      • message — сообщение, которое выводит компонент.
      • query_id — идентификатор запроса.
      • severity — уровень логирования, например, Debug.
      • thread — идентификатор потока, участвующего в обработке запросов.

      В параметре column_filter можно указать несколько колонок, если нужно отфильтровать логи по нескольким колонкам.

      • from_time — левая граница временного диапазона в формате RFC-3339. Пример: 2006-01-02T15:04:05Z.
      • to_time — правая граница временного диапазона, формат аналогичен from_time.
    • filter — фильтр логов. Можно отфильтровать логи так, чтобы поток логов содержал только нужные логи.

      Подробнее о фильтрах и их синтаксисе см. в справочнике API.

      Совет

      Фильтр может содержать в себе кавычки и другие символы. Экранируйте их, если это необходимо.

      Поддерживаемые фильтры:

      • message.hostname — фильтрация по имени хоста.
      • message.severity — фильтрация по уровню логирования.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

Была ли статья полезна?

Предыдущая
Переключение первичной реплики
Следующая
Диагностика производительности
Проект Яндекса
© 2025 ООО «Яндекс.Облако»