Получение лога экспорта

Материал из Документация Ключ-АСТРОМ

Получает записи лога, соответствующие указанным критериям. Совпадающие записи лога сортируются по критериям, указанным в параметре запроса сортировки .

В отличие от запроса логов поиска GET , этот запрос не накладывает ограничения на общее количество результирующих записей лога. Однако, если результирующий лог слишком велик, применяется разбиение на страницы. Вы можете установить размер страницы в параметре запроса pageSize . В таких случаях первый ответ содержит nextPageKey для второй страницы. Используйте его в параметре запроса nextPageKey , чтобы получить вторую страницу, которая, в свою очередь, содержит nextPageKey для третьей страницы и так далее.

Запрос создает application/jsonполезную нагрузку.

GET
  • SaaS https://{идентификатор_вашей_среды}.live.ruscomtech.ru/api/v2/logs/export
  • Окружающая среда АктивногоШлюза https://{ваш-активный-домен}/e/{идентификатор-вашей-среды}/api/v2/logs/export

Аутентификация

Чтобы выполнить этот запрос, вам необходимо разрешение на чтение логов ( logs.read), назначенное вашему токену API. Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .

Параметры

Параметр Тип Описание In Необходимость
from string Начало запрошенного таймфрейма.

Вы можете использовать один из следующих форматов:

  • Отметка времени в миллисекундах UTC.
  • Человекочитаемый формат 2021-01-25T05:57:01.123+01:00. Если часовой пояс не указан, используется UTC. Вы можете использовать пробел вместо T. Секунды и доли секунды не являются обязательными.
  • Относительный таймфрейм, назад. Формат: now-NU/A, где Nколичество времени, Uединица времени и Aвыравнивание. Выравнивание округляет все меньшие значения до ближайшего нуля в прошлом. Например, now-1y/wэто один год назад, выровненный на неделю. Вы также можете указать относительный таймфрейм без выравнивания: now-NU. Поддерживаемые единицы времени для относительного таймфрейма:
    • m: минуты
    • h: часы
    • d: дни
    • w: недели
    • M: месяцы
    • y: годы

Если не задано, используется относительный двухнедельный таймфрейм ( now-2w).

запрос по желанию
to string Конец запрошенного периода времени.

Вы можете использовать один из следующих форматов:

  • Отметка времени в миллисекундах UTC.
  • Человекочитаемый формат 2021-01-25T05:57:01.123+01:00. Если часовой пояс не указан, используется UTC. Вы можете использовать пробел вместо T. Секунды и доли секунды не являются обязательными.
  • Относительный таймфрейм, назад. Формат: now-NU/A, где Nколичество времени, Uединица времени и Aвыравнивание. Выравнивание округляет все меньшие значения до ближайшего нуля в прошлом. Например, now-1y/wэто один год назад, выровненный на неделю. Вы также можете указать относительный таймфрейм без выравнивания: now-NU. Поддерживаемые единицы времени для относительного таймфрейма:
    • m: минут
    • h: часы
    • d: дней
    • w: недели
    • M: месяцы
    • y: годы

Если не установлено, используется текущая метка времени.

запрос по желанию
nextPageKey string Курсор для следующей страницы результатов. Вы можете найти его в поле nextPageKey предыдущего ответа.

Первая страница всегда возвращается, если вы не укажете параметр запроса nextPageKey .

Когда nextPageKey настроен на получение последующих страниц, вы должны опустить все остальные параметры запроса.

запрос по желанию
pageSize integer Количество результатов на странице результатов. запрос по желанию
query string Поисковый запрос лога.

Запрос должен использовать язык поисковых запросов Ключ-АСТРОМ .

Запрос имеет ограничение в 20 отношений (логические операторы между простыми выражениями ( AND, OR) или операторы сравнения ( =, !=, <, <=, >, >=) в простых выражениях).

запрос по желанию
sort string Определяет порядок записей лога.

Каждое поле имеет префикс знака (+/-) для порядка сортировки. Если префикс знака не установлен, +будет применена опция.

В настоящее время упорядочивание доступно только для временной метки (+timestamp для самых старых записей первыми или -timestamp для самых новых записей).

Если разрешения в миллисекундах, предоставляемого отметкой времени, недостаточно, записи журнала сортируются в соответствии с порядком, в котором они появляются в источнике журнала (удаленный процесс, записывающий в конечную точку REST API, или удаленный процесс, из которого собираются логи).

запрос по желанию

Ответ

Коды ответов

Код Тип Описание
200 ExportedLogRecordList Успех
400 ErrorEnvelope Не удалось. Ввод недействителен.
501 ErrorEnvelope Не удалось. Сервер либо не распознает метод запроса, либо не может выполнить запрос. Может произойти, если включено хранилище журналов Grail.

Объекты тела ответа

Объект ExportedLogRecordList

Список экспортированных записей журнала.

Элемент Тип Описание
пresults LogRecord[] Список извлеченных записей лога.
pageSize integer Количество записей на странице.
totalCount integer Общее количество записей в результате.
nextPageKey string Курсор для следующей страницы результатов. Имеет значение nullна последней странице.

Используйте его в параметре запроса nextPageKey для получения последующих страниц результата.

Объект LogRecord

Единая запись лога.

Элемент Тип Описание
additionalColumns object Дополнительные столбцы записи лога.
eventType string Тип события

Элемент может содержать следующие значения

  • K8S
  • LOG
  • SFM
timestamp integer Временная метка записи журнала в миллисекундах UTC.
status string Состояние лога (на основе уровня лога).

Элемент может содержать следующие значения

  • ERROR
  • INFO
  • NONE
  • WARN
content string Содержимое записи лога.

JSON-модель тела ответа

{
  "results": [
    {
      "timestamp": "1631193089000",
      "status": "ERROR",
      "content": "example log content",
      "event.type": "LOG",
      "additionalColumns": {
        "custom.attribute": [
          "value1",
          "value2"
        ],
        "loglevel": [
          "SEVERE"
        ]
      }
    }
  ],
  "pageSize": 100,
  "nextPageKey": "___-2lZ43q0AAAAdeJxjYAAC1sLS1KJKBhjggtIijFCGHEwCAFiHAoP___7aVnjerQ",
  "totalCount": 150
}