Struktura logów Cloud Logging

Cloud Logging reprezentuje logi za pomocą typu danych LogEntry, który definiuje wspólne dane dla wszystkich wpisów logu oraz konkretne ładunki, które mogą zawierać usługi Google Cloud. Więcej informacji znajdziesz w sekcji LogEntry.

Długie logi są dzielone na kilka wpisów logu. Więcej informacji znajdziesz w sekcji Obsługa podzielonych logów w tej dokumentacji.

Przykładowe wpisy logu

Poniżej znajdziesz przykład wiadomości LogEntry w przypadku logu UpdateVehicle. Żądanie i odpowiedź RPC znajdują się w polu 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"
    }

Jeśli zostanie zwrócony błąd RPC, pole responseVehicle zostanie wyczyszczone, a pole errorResponse zostanie ustawione i wypełnione w ramach 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"
    }

Więcej informacji o języku zapytań usługi Logging znajdziesz w artykule Język zapytań usługi Logging.

Informacje o tym, jak używać logów do tworzenia wskaźników, znajdziesz w artykule z omówieniem wskaźników opartych na logach.

Co dalej?

Obsługa długich wpisów w dzienniku za pomocą podzielonych dzienników