Logs ansehen

Jede Anfrage von Cloud CDN wird in Cloud Logging protokolliert. Das Logging erfolgt automatisch und muss nicht aktiviert werden.

Logs für Cloud CDN sind mit dem externen HTTP(S)-Load-Balancer verknüpft, an den Ihre Cloud CDN-Back-Ends angehängt sind. Cloud CDN-Logs werden zuerst nach der Weiterleitungsregel und dann nach der URL-Zuordnung indexiert.

So rufen Sie Cloud CDN-Logs auf:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Loganzeige auf.

    Loganzeige aufrufen

  2. Zum Ansehen aller Logs wählen Sie im ersten Drop-down-Menü der Zeile Cloud-HTTP-Load-Balancer > Alle Weiterleitungsregeln aus.

  3. Um die Logs für nur eine Weiterleitungsregel anzuzeigen, wählen Sie eine Weiterleitungsregel aus der Liste aus.

  4. Wenn Sie nur Logs für eine URL-Zuordnung ansehen möchten, die von einer Weiterleitungsregel verwendet wird, wählen Sie Cloud HTTP-Load-Balancer und dann die für Sie relevante Weiterleitungsregel und URL-Zuordnung aus.

Beispiel für einen Cache-Treffer im Log

Der folgende Logeintrag zeigt einen Cache-Treffer. So rufen Sie Cache-Treffer auf:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Loganzeige auf.

    Loganzeige aufrufen

  2. Filtern Sie nach dem Namen der Weiterleitungsregel.

    2020-06-08 16:41:30.078 PDT
    GET
    304
    157 B
    null
    Chrome 83
    http://LOAD_BALANCER_IP_ADDRESS/static/us/three-cats.jpg
    
    CLIENT_IP_ADDRESS - "GET http://LOAD_BALANCER_IP_ADDRESS/static/us/three-cats.jpg" 304 157 "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36"
    Expand all | Collapse all{
    httpRequest: {
    cacheHit: true
    cacheLookup: true
    remoteIp: "CLIENT_IP_ADDRESS"
    requestMethod: "GET"
    requestSize: "577"
    requestUrl: "http://LOAD_BALANCER_IP_ADDRESS/static/us/three-cats.jpg"
    responseSize: "157"
    status: 304
    userAgent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36"
    }
    insertId: "1oek5rg3l3fxj7"
    jsonPayload: {
    @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry"
    cacheId: "SFO-fbae48ad"
    statusDetails: "response_from_cache"
    }
    logName: "projects/PROJECT_ID/logs/requests"
    receiveTimestamp: "2020-06-08T23:41:30.588272510Z"
    resource: {
    labels: {
     backend_service_name: ""
     forwarding_rule_name: "FORWARDING_RULE_NAME"
     project_id: "PROJECT_ID"
     target_proxy_name: "TARGET_PROXY_NAME"
     url_map_name: "URL_MAP_NAME"
     zone: "global"
    }
    type: "http_load_balancer"
    }
    severity: "INFO"
    spanId: "7b6537d3672e08e1"
    timestamp: "2020-06-08T23:41:30.078651Z"
    trace: "projects/PROJECT_ID/traces/241d69833e64b3bf83fabac8c873d992"
    }
    

Inhalt der Logs

Zusätzlich zu den in den meisten Logs enthaltenen allgemeinen Informationen wie etwa Wichtigkeit, Projekt-ID, Projektnummer und Zeitstempel enthalten HTTP(S)-Load-Balancing-Logs Folgendes:

  • Die HttpRequest-Logfelder, in denen der HTTP-Statuscode und die zurückgegebenen Byte erfasst sind und die angeben, ob eine Cache-Suche und/oder Cache-Füllung durchgeführt wurde.

  • Das Feld jsonPayload.cacheId, das den Standort und die Cache-Instanz angibt, von der die Cache-Antwort bereitgestellt wurde. Beispiel: Eine Cache-Antwort, die von einem Cache in Amsterdam bereitgestellt wurde, hätte den cacheId-Wert AMS-85e2bd4b, wobei AMS der IATA-Code und 85e2bd4b eine intransparente Kennzeichnung der Cache-Instanz ist, da manche Cloud CDN-Standorte mehrere separate Caches haben.

  • Die statusDetails-Felder der structPayload.

Sie können nach den folgenden Feldern filtern, um den Cache-Treffer-, Cache-Fehler- oder Neuvalidierungsstatus einer von Cloud CDN bereitgestellten Anfrage zu bestimmen:

  • Cache-Treffer

    statusDetails="response_from_cache"

    oder

    httpRequest.cacheHit=true
    httpRequest.cacheValidatedWithOriginServer!=true

  • Cache-Treffer mit Ursprungsserver validiert

    statusDetails="response_from_cache_validated"

    oder

    httpRequest.cacheHit=true
    httpRequest.cacheValidatedWithOriginServer=true

  • Cache-Fehler

    statusDetails="response_sent_by_backend"

    oder

    httpRequest.cacheHit!=true
    httpRequest.cacheLookup=true

Boolesche Logfelder werden normalerweise nur angezeigt, wenn sie den Wert true haben. Wenn ein boolesches Feld den Wert false hat, wird es nicht im Log ausgegeben.

Für diese Felder wird eine UTF-8-Codierung erzwungen. Zeichen, bei denen es sich nicht um UTF-8-Zeichen handelt, werden durch Fragezeichen ersetzt.

Wenn Cloud CDN eine Clientanfrage durch Initiieren von Validierungs- und/oder Bytebereichsanfragen bereitstellt, wird das Feld serverIp aus dem Logeintrag von Cloud Logging für die Clientanfrage weggelassen. Dies liegt daran, dass Cloud CDN als Antwort auf eine einzelne Clientanfrage Anfragen an mehrere Server-IP-Adressen senden kann.

Durch jede von Cloud CDN initiierte Anfrage wird außerdem ein Logeintrag in Cloud Logging erstellt. Der resultierende Logeintrag enthält ein Feld parentInsertId innerhalb von jsonPayload. Sie können dieses Feld verwenden, um die insertId des Logeintrags für die einzelne Clientanfrage zu identifizieren, durch die Cloud CDN die Validierungs- oder Bytebereichsanfrage initiiert. Darüber hinaus wird Cloud CDN durch den Logeintrag als User-Agent identifiziert.

Nächste Schritte

  • Weitere Informationen zum Logging, einschließlich zum Exportieren von Logs nach BigQuery, Pub/Sub oder Cloud Storage sowie zum Konfigurieren logbasierter Messwerte für das Monitoring und Benachrichtigungen, finden Sie in der Dokumentation zu Cloud Logging.