Anfrage-Logging konfigurieren

Auf dieser Seite erfährst du, wie du die Anfrageprotokollierung für Media CDN konfigurierst.

Logs aktivieren

Logging ist standardmäßig deaktiviert, um die gespeicherten Daten zu minimieren. Logs werden weitergeleitet, gefiltert und gespeichert in Cloud Logging:

  • So aktivieren Sie das Logging für einen bestimmten Media CDN-Dienst:

    gcloud edge-cache services update YOUR_SERVICE \
       --enable-logging \
       --logging-sample-rate=1.0
    
  • Deaktivieren Sie die Protokollierung:

    gcloud edge-cache services update YOUR_SERVICE \
       --no-enable-logging
    
  • So rufen Sie den aktuellen Status des Loggings für einen Dienst ab:

    gcloud edge-cache services describe YOUR_SERVICE
    

    Die Ausgabe sieht in etwa so aus:

    ...
    logConfig:
     enable: true
     sampleRate: 1.0
    ...
    

Log-Sampling-Rate festlegen

Bei großen Anfragen müssen Sie, anstatt für jede Anfrage ein Log zu erfassen, ziehen möglicherweise Stichproben von Logs und Messwerten für das proaktive Monitoring vor. und Ermittlungen.

Wenn Sie Logs nur für 10% Ihrer Anfragen aufnehmen und speichern möchten, legen Sie logConfig.sampleRate in 0.1:

gcloud edge-cache services update YOUR_SERVICE \
    --enable-logging \
    --logging-sample-rate=0.1

Logging muss aktiviert sein, um die Abtastrate zu ändern.

Die Abtastrate beträgt, sofern nicht anders angegeben, standardmäßig den Wert 0 (0 %), wodurch jede Anfrage für den konfigurierten Dienst protokolliert wird.

Abfragelogs

Sie können Logs mithilfe des Log-Explorers in der Google Cloud Console oder der Google Cloud-Befehlszeile abfragen.

Wenn Sie Logs in der Google Cloud Console aufrufen möchten, filtern Sie nach dem Ressourcentyp „Media CDN“ und (optional) nach Projekt- und Dienstname.

Die folgende Logging-Abfrage zeigt die Protokolle für alle Ihre Media CDN-Dienste:

resource.type="edgecache.googleapis.com/EdgeCacheRouteRule"

Zum Filtern nach Logs, die mit einer bestimmten EdgeCacheService-Ressource verknüpft sind, und Projekt ist, erweitern Sie diese Abfrage:

resource.type="edgecache.googleapis.com/EdgeCacheRouteRule"
resource.labels.resource_container="projects/12345678"
resource.labels.service_name="MY_PROJECT"

Informationen zum Abgleich mit partiellen Namen oder zur Verwendung regulärer Ausdrücke finden Sie unter Vergleiche der Logging-Abfragesprache.

Beispiel: Cache-Fehler identifizieren

Eine Anfrage für ein Objekt kann aus folgenden Gründen ein Cache-Fehler haben und eine Cache-Füllung verursachen:

  • Eine zu kurze Gültigkeitsdauer (TTL)
  • Ein zu spezifischer Cache-Schlüssel
  • Zu wenige Anfragen für die Speicherung im Cache

Zum Identifizieren von Cache-Fehlern können Sie im Log-Explorer nach Logs filtern.

Die folgende Logabfrage zeigt Anfragen, die im Cache zwischengespeichert werden können (nachgeschlagen werden), aber ein Ausfüllen vom Ursprung erfordern:

resource.type="edgecache.googleapis.com/EdgeCacheRouteRule"
resource.labels.resource_container="projects/12345678"
resource.labels.service_name="MY_PROJECT"
jsonPayload.cacheStatus="miss"

Wenn Sie nach einer bestimmten URL filtern müssen, können Sie nach dem Feld httpRequest.requestUrl filtern:

httpRequest.requestUrl = "URL"

Verwenden Sie den has-Operator, um nach einem Teil der URL zu filtern, z. B. der Pfadkomponente:

# `:` is the `has` comparison operator

httpRequest.requestUrl: "/videos/1381381_1080.mp4"
# You can use `OR` or `AND` to filter on multiple values

httpRequest.requestUrl: ("https://media-test.example.com/" OR "https://canary.example.net")

Weitere Informationen zur umfassenden Logging-Syntax für den Abgleich und Filtern, siehe Erweiterte Abfragen mithilfe der Logging-Abfrage schreiben Sprache.

Gespeicherte Logs filtern

Wenn Sie Logs vor dem Speichern filtern möchten, z. B. um nur relevante Felder zu erfassen, um das Gesamtvolumen der zu speichernden und abzufragenden Logs zu reduzieren, können Sie Ausschlussfilter konfigurieren, mit denen Sie eine Abfrage (Filter) definieren können, die Felder vor der Speicherung ein- oder ausschließt.

Sie können auch mehrere Filter einrichten und beispielsweise alle Cache-Fehleranfragen oder alle Anfragen für einen bestimmten Hostnamen erfassen und nur eine Stichprobe aller Logs aufnehmen.

Logs weiterleiten

Media CDN lässt sich direkt in Cloud Logging einbinden, unterstützt Sie beim Aggregieren und Routing Ihrer Logs auf folgende Weise:

  • An Speicherziele wie Cloud Storage und BigQuery

  • An Pub/Sub-Themen, an die Drittanbieterziele weitergeleitet werden können Abonnieren, um auf die Logs zuzugreifen

Eine Übersicht dazu, wie Protokolle aus Cloud Logging weitergeleitet werden, finden Sie unter Routing und Speicher.

Nächste Schritte