Структура журналов Cloud Logging

Cloud Logging представляет журналы с помощью типа данных LogEntry, который определяет общие данные для всех записей в журнале, а также определенные полезные нагрузки, которые могут включать сервисы Google Cloud. Подробнее LogEntry…

Длинные журналы разбиваются на несколько записей в журнале. Подробнее о том, как обрабатывать разделенные журналы…

Примеры записей в журнале

В примере ниже показан LogEntry для журнала UpdateVehicle. Запрос и ответ RPC находятся в поле jsonPayload.

    {
      "insertId": "c6b85fbc927343fc8a85338c57a65733",
      "jsonPayload": {
        "request": {
          "header": {4},
          "updateMask": "deviceSettings",
          "vehicleId": "uniqueVehicleId",
          "vehicle": {2}
        },
        "response": {
          "name": "providers/example-project-id/vehicles/uniqueVehicleId",
          "availableCapacity": 2,
          "state": "VEHICLE_STATE_OFFLINE",
          "maximumCapacity": 2,
          "vehicleType": {1},
          "supportedTrips": {1}
        },
        "@type": "type.googleapis.com/maps.fleetengine.v1.UpdateVehicleLog"
      },
      "resource": {
        "type": "fleetengine.googleapis.com/Fleet",
        "labels": {2}
      },
      "timestamp": "2021-01-01T00:00:00.000000000Z",
      "labels": {2},
      "logName": "projects/example-project-id/logs/fleetengine.googleapis.com%2Fupdate_vehicle",
      "receiveTimestamp": "2021-01-01T00:00:00.000000000Z"
    }

Если возвращается ошибка RPC, поле responseVehicle очищается, а поле errorResponse задается и заполняется в jsonPayload.

    {
      "insertId": "c6b85fbc927343fc8a85338c57a65733",
      "jsonPayload": {
        "errorResponse": {
          "httpStatusCode": 404,
          "code": "NOT_FOUND",
          "message": "No entity with id invalidVehicleId exists"
        },
        "@type": "type.googleapis.com/maps.fleetengine.v1.UpdateVehicleLog",
        "request": {
          "vehicle": {3},
          "updateMask": "deviceSettings",
          "vehicleId": "fakeVehicleId",
          "header": {4}
        }
      },
      "resource": {
        "type": "fleetengine.googleapis.com/Fleet",
        "labels": {2}
      },
      "timestamp": "2021-01-01T00:00:00.000000000Z",
      "severity": "ERROR",
      "labels": {2}
      "logName": "projects/example-project-id/logs/fleetengine.googleapis.com%2Fupdate_vehicle",
      "receiveTimestamp": "2021-01-01T00:00:00.000000000Z"
    }

Подробнее о языке запросов к журналам…

Информацию о том, как использовать журналы для создания показателей, можно найти в статье Обзор показателей на основе данных журналов.

Дальнейшие действия

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