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

Чтение записей

Статья создана
Yandex Cloud
Улучшена
Обновлена 28 мая 2025 г.

Время в журнале указано по UTC. Записи можно отфильтровать с помощью языка фильтрующих выражений.

Консоль управления
CLI
SDK
API
  1. В консоли управления перейдите в каталог, в котором находится лог-группа.
  2. Выберите сервис Cloud Logging.
  3. Нажмите на строку с лог-группой, записи в которой хотите посмотреть.
  4. На открывшейся странице отобразятся записи.

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

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

При просмотре журнала вы можете указать конкретный временной интервал с помощью параметров --since и --until. Если временной интервал не был указан, отображается информация за последний час.

Использование параметров:

  • --since — момент времени N и позже (параметр --since можно опустить и указать сразу время).
  • --until — момент времени N и раньше.

Если был указан только один параметр, отображается информация за один час до или после момента времени N в зависимости от указанного параметра.

Допустимые форматы указания времени:

  • ЧЧ:ММ:СС. Например, 15:04:05.
  • RFC-3339. Например: 2006-01-02T15:04:05Z, 2h, 3h30m ago.

Для обращения к лог-группе используйте ее имя или уникальный идентификатор. Чтобы узнать их, получите список лог-групп в каталоге. Если имя или идентификатор не указаны, выводятся записи из лог-группы по умолчанию текущего каталога. Параметры --group-name и --group-id можно опустить и указать сразу имя или идентификатор группы.

Ограничить количество выводимых записей можно с помощью параметра --limit. Допустимые значения — от 1 до 1000.

Чтобы посмотреть записи в формате JSON, выполните команду:

yc logging read --group-name=default --format=json

Результат:

[
  {
    "uid": "488ece3c-75b8-4d35-95ac-2b49********",
    "resource": {},
    "timestamp": "2023-06-22T02:10:40Z",
    "ingested_at": "2023-06-22T08:49:15.716Z",
    "saved_at": "2023-06-22T08:49:16.176097Z",
    "level": "INFO",
    "message": "My message",
    "json_payload": {
      "request_id": "1234"
    }
  }
]

Чтобы читать записи по мере их поступления, используйте флаг --follow:

yc logging read --group-name=default --follow

Такая команда выведет записи за последний час и продолжит выводить новые до тех пор, пока вы не прервете ее, нажав Ctrl + C. Флаг --follow не совместим с параметрами --since и --until.

Читать записи в Cloud Logging можно с помощью Yandex Cloud SDK, реализованного для различных языков. Ниже приведены примеры использования Python SDK. Вы можете работать с кодом в своей инфраструктуре или в Yandex Cloud Functions.

Локально

import os
import yandexcloud
import pprint
from yandex.cloud.logging.v1.log_reading_service_pb2 import ReadRequest
from yandex.cloud.logging.v1.log_reading_service_pb2 import Criteria
from yandex.cloud.logging.v1.log_reading_service_pb2_grpc import LogReadingServiceStub

def handler():
  cloud_logging_service = yandexcloud.SDK(iam_token=os.environ['iam']).client(LogReadingServiceStub)
  logs = {}
  criteria = Criteria(log_group_id='<id_log_группы>', resource_ids=['<id_ресурса>'])
  read_request = ReadRequest(criteria=criteria)

  logs = cloud_logging_service.Read(read_request)
  return logs

pprint.pprint(handler())

Где:

  • log_group_id — идентификатор лог-группы.
  • resource_ids — идентификатор ресурса, например кластера Managed Service for Kubernetes.

Yandex Cloud Functions

import yandexcloud
from yandex.cloud.logging.v1.log_reading_service_pb2 import ReadRequest
from yandex.cloud.logging.v1.log_reading_service_pb2 import Criteria
from yandex.cloud.logging.v1.log_reading_service_pb2_grpc import LogReadingServiceStub

def handler(event, context):
    cloud_logging_service = yandexcloud.SDK().client(LogReadingServiceStub)
    logs = {}
    criteria = Criteria(log_group_id='<id_log_группы>', resource_ids=['<id_ресурса>'])
    read_request = ReadRequest(criteria=criteria)

    logs = cloud_logging_service.Read(read_request)
    return logs

Где:

  • log_group_id — идентификатор лог-группы.
  • resource_ids — идентификатор ресурса, например кластера Managed Service for Kubernetes.

Параметры функции:

  • Среда выполнения: python38.
  • Точка входа: index.handler.
  • Таймаут: 3.
  • Память: 128 МБ.

Чтобы посмотреть записи в лог-группе, воспользуйтесь вызовом gRPC API LogReadingService/Read.

Пример

Чтобы посмотреть записи в лог-группе за последний час с помощью gRPCurl, выполните действия:

  1. Получите и запишите IAM-токен в переменную:

    IAM_TOKEN=`yc iam create-token`
    
  2. Вычислите и запишите временны́е метки в переменные:

    NOW=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
    ONE_HOUR_AGO=$(date -u -d "1 hour ago" +"%Y-%m-%dT%H:%M:%SZ")
    

    Вы можете указать другой период вместо 1 часа — "1 hour ago". Например, интервал 1 месяц, 2 недели, 3 дня и 4 часа будет выглядеть так:

    "1 month ago 2 weeks ago 3 days ago 4 hours ago"
    
    macOS

    Для macOS используйте:

    NOW=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
    ONE_HOUR_AGO=$(date -u -v-1H +"%Y-%m-%dT%H:%M:%SZ")
    
  3. Запишите идентификатор нужной лог-группы в переменную:

    LOG_GROUP_ID="<идентификатор_лог-группы>"
    
  4. Выполните запрос с помощью gRPCurl:

    grpcurl -H "Authorization: Bearer $IAM_TOKEN" \
      -d '{
        "criteria": {
          "log_group_id": "'$LOG_GROUP_ID'",
          "since": "'$ONE_HOUR_AGO'",
          "until": "'$NOW'",
          "page_size": 10
        }
      }' \
      -import-path ~/cloudapi/ \
      -import-path ~/cloudapi/third_party/googleapis/ \
      -proto ~/cloudapi/yandex/cloud/logging/v1/log_reading_service.proto \
      reader.logging.yandexcloud.net:443 \
      yandex.cloud.logging.v1.LogReadingService/Read
    

    Где:

    • log_group_id — идентификатор лог-группы.
    • since — начало периода.
    • until — конец периода.
    • page_size — количество записей в результате.

    Результат:

    {
      "logGroupId": "e23hf37rnj71********",
      "entries": [
        {
          "uid": "26:10******:*",
          "resource": {},
          "timestamp": "2025-05-22T14:42:12.896587Z",
          "ingestedAt": "2025-05-22T14:42:14.098Z",
          "savedAt": "2025-05-22T14:42:15.697585Z",
          "level": "INFO",
          "message": "test_message",
          "jsonPayload": {
            "host": "test_host",
            "request_id": "1234"
          }
        },
    ...
        {
          "uid": "7:1a******:*",
          "resource": {},
          "timestamp": "2025-05-22T14:42:25.864347Z",
          "ingestedAt": "2025-05-22T14:42:27.019Z",
          "savedAt": "2025-05-22T14:42:28.575509Z",
          "level": "INFO",
          "message": "test_message",
          "jsonPayload": {
            "host": "test_host",
            "request_id": "1234"
          }
        }
      ],
      "nextPageToken": "KLUv..."
    }
    

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

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