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

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

Получает записи лога, соответствующие указанным критериям. Совпадающие записи лога сортируются по критериям, указанным в параметре запроса sort , а затем возвращаются первые X записей (как указано в параметре запроса limit ). Чтобы выполнить запрос без ограничения размера, используйте запрос GET на экспорт журналов .

Если полученный журнал слишком велик, он делится на слайсы. В таких случаях первый ответ содержит nextSliceKey для второго слайса. Используйте его в параметре запроса nextSliceKey для получения второго слайса, который, в свою очередь, содержит nextSliceKey для третьего слайса и так далее.

Результаты могут быть неравномерно распределены между срезами, а некоторые срезы могут быть пустыми.

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

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

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

Чтобы выполнить этот запрос, вам необходимо разрешение на Чтение логов( 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: годы

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

запрос по желанию
limit integer Желаемое количество записей лога.

Максимально допустимый лимит составляет 1000.

Если не установлено, используется 1000.

запрос по желанию
query string Поисковый запрос лога.

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

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

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

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

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

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

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

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

Если этот параметр установлен, все остальные параметры запроса игнорируются.

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

Ответ

Коды ответов

Код Тип Описание
200 LogRecordsList Успех
400 ErrorEnvelope Не удалось. Ввод недействителен.

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

Объект LogRecordsList

Список извлеченных записей лога.

Элемент Тип Описание
results LogRecord[] Список извлеченных записей журнала.
nextSliceKey string Курсор для следующего фрагмента записей журнала.
sliceSize integer Общее количество записей в срезе.

Объект 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"
        ]
      }
    }
  ],
  "sliceSize": 100,
  "nextSliceKey": "___-2hI03q0AAAAAAAAAAAAAA-gAAAAAAAAH0P____8AAABkAAAACXRpbWVzdGFtcAD___7aEjTerQ"
}