Обработка длинных записей журнала с помощью разделенных журналов

Cloud Logging ограничивает размер входящих журналов до 256 КБ и отбрасывает все, что больше. Чтобы гарантировать сохранение больших журналов в Cloud Logging, Fleet Engine может разбить их на ряд более мелких журналов.

В облачной системе логирования могут быть разделены следующие журналы из Fleet Engine:

Каждая запись в журнале разделения содержит следующие поля:

  • split.uid : Уникальный идентификатор группы записей журнала, которые были отделены от общей исходной записи журнала. Значение этого поля одинаково для всех записей, отделенных от исходной записи журнала.
  • split.index : Позиция этой записи в серии разделенных записей. Первая запись из разделенной последовательности имеет индекс 0.split.index . Этот индекс также добавляется к полю LogEntry.insertId .
  • split.totalSplits : Количество записей журнала, на которые была разделена исходная запись журнала. Значение этого поля одинаково для всех записей, разделенных из исходной записи журнала.
split log 1:
insertId: "XXXX-01"
split {index: 0, uuid: "XXXX"}

splitLog 2:
insertId: "XXX-02"
split {index: 1, uuid: "XXXX"}

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

    split.uid="789+2022-02-22T12:22:22.22+05:00"
    sortby split.index OR sortby insertID

Структура этих разделенных журналов практически идентична структуре, показанной в руководстве по журналам аудита Cloud. Основное отличие заключается в том, что для журналов Fleet Engine разделение происходит в поле jsonPayload . Подробности и примеры см. в разделе «Разделение записей журнала аудита» .

Что дальше?

Чтобы подсчитывать и фильтровать журналы в соответствии с вашими критериями, создайте метрики на основе журналов .