Webanfragelogs Ihrer Website mit Cloud Logging ansehen, filtern und durchsuchen

Sie können Ihr Firebase-Projekt mit Cloud Logging verknüpfen, um die Webanfrageprotokolle für jede Ihrer Cloud Logging-Websites aufzurufen, zu durchsuchen und zu filtern.Hosting Diese Logs stammen aus dem CDN, das automatisch von Firebase bereitgestellt wird. Daher werden alle Anfragen an Ihre Website und die zugehörigen Anfragedaten protokolliert.

Hier sind einige Möglichkeiten, wie Sie Cloud Logging-Protokolle verwenden können. Weitere Informationen finden Sie in den einzelnen Abschnitten dieser Seite.

  • Website besser verstehen: Sie können unter anderem herausfinden, wo und wann Ihre Website besucht wird, welche Antwortstatus Ihre Website hat und wie hoch die Latenz der Endnutzeranfragen ist.

  • Logs mit Abfragen filtern: Sie können automatisch erfasste Daten verwenden, um Daten zu einzelnen Anfragen oder Ihrer Website zu filtern und zu visualisieren.

  • Logbasierte Messwerte verwenden: Sie können Cloud Monitoring-Diagramme und Benachrichtigungsrichtlinien aus vordefinierten Systemmesswerten oder benutzerdefinierten Messwerten erstellen.

  • Logs in andere Google Cloud-Tools exportieren: Sie können Protokolldaten in anderen Tools wie BigQuery und Data Studio verwenden, um sie noch effektiver zu analysieren und zu korrelieren.

Wenn Sie mehrere Hosting-Websites in Ihrem Projekt haben, können Sie auswählen, für welche Hosting-Websites Protokolle exportiert werden sollen. Sie können die Protokolldaten dann nach Hosting-Website und sogar nach Domain filtern und aufrufen. Wenn Sie bestimmte Hosting-Websites für den Export von Protokollen auswählen, können Sie auch die Menge der für Ihr Projekt verarbeiteten Daten steuern.

  1. Klicken Sie in der Firebase-Konsole auf der Karte Cloud Logging für die Integration auf Verknüpfen.

    Wenn Sie Cloud Logging verknüpfen oder die Verknüpfung aufheben möchten, benötigen Sie die Berechtigungen, die in einer der folgenden Rollen enthalten sind: Projektinhaber oder ‑bearbeiter oder Firebase Develop-Administrator.

  2. Folgen Sie der Anleitung auf dem Bildschirm, um auszuwählen, für welche Ihrer Hosting-Websites Protokolle nach Cloud Logging exportiert werden sollen.

    Wenn Sie bereits eine oder mehrere aktive Hosting-Websites haben, wird im Verknüpfungsvorgang ein geschätzter Datennutzungsgrad für Protokolle von jeder Ihrer Hosting-Websites angezeigt. Dieser Wert wird anhand der letzten 30 Tage geschätzt.

Nachdem Sie eine Verknüpfung mit Cloud Logging hergestellt haben, werden Protokolle für alle neuen Anfragen an Ihre Hosting-Websites in der Regel innerhalb von 30 Minuten nach der Anfrage angezeigt.

Sie können auch die Verknüpfung zwischen Firebase Hosting und Cloud Logging aufheben. Dadurch werden keine Webanfrageprotokolle mehr nach Cloud Logging exportiert.

Datennutzung im Blick behalten

Nachdem Sie eine Verknüpfung mit Cloud Logging hergestellt haben, können Sie die Datennutzungsrate für Logs von Ihren Hosting-Websites aufrufen:

Website besser verstehen

Die Logs Viewer-Oberfläche in der Google Cloud-Konsole bietet Tools, mit denen Sie anhand von Abfragen und integrierten Filtern und Datenbereichen bestimmte Protokolle und Daten aufrufen können. Weitere Informationen zum Filtern von Protokollen mit Abfragen finden Sie im nächsten Abschnitt.

  • Woher stammen die Zugriffe auf Ihre Website?
    Sie können sich Informationen zu jeder Anfrage ansehen, einschließlich Quell-IP, Verweisquelle, Stadt und Status.

  • Wann besuchen Nutzer Ihre Website?
    Im Bereich Histogramm können Sie die Verteilung nach bestimmten Zeiträumen sehen. So erhalten Sie einen Überblick über die üblichen Spitzen und Tiefs bei der Nutzung Ihrer App und können unerwartete Zugriffsspitzen erkennen.

  • Wie ist die Statusverteilung für Endnutzeranfragen?
    Sie können den Status jeder Anfrage einsehen und sogar Anfragen diagnostizieren, die Fehler zurückgeben. Sie können Ihre Protokolle nach Critical, Error oder Warning filtern.

  • Wie lange dauert es, bis Ihre Website auf eine Anfrage reagiert?
    Die Latenz Ihrer Website für jede Anfrage können Sie anhand des in jedem Protokoll erfassten Werts latency sehen.

  • Wird auf Ihrer Website das Caching von Inhalten genutzt?
    Jeder Log enthält ein Feld cacheHit, das angibt, ob die Ressource Ihrer Website schnell aus dem CDN-Cache von Hosting bereitgestellt wurde oder ob der vollständige Zugriff auf das Hosting-Backend erforderlich war. So können Sie die Leistung Ihrer Website verbessern, indem Sie das globale CDN von Firebase optimal nutzen. So können Sie beispielsweise die Caching-Gewohnheiten Ihrer statischen Assets und dynamischen Inhalte optimieren.

  • Wie ist der Traffic auf Ihre verschiedenen Domains verteilt?
    Wenn Sie mehrere Domains oder Hosting Websites haben, können Sie Ihre Protokolle nach Domain oder Website filtern. So sehen Sie, wie Ihre Zugriffe verteilt sind. Wenn Sie nach Domain filtern, können Sie nachverfolgen, welche Domain am häufigsten besucht wird.

Logs mit Abfragen filtern

Weitere Informationen zum Filtern von Protokollen mit Abfragen finden Sie unter Beispielabfragen mit der Loganzeige und Logabfragen erstellen. In der folgenden Tabelle werden die Felder beschrieben, die für diese Abfragen verfügbar sind.

Für Hosting sind hier einige erste Filter für eine Suchanfrage:

  • Ressource (resource.type) – firebase_domain (Firebase Hosting Websitedomain)
  • Logname (logName) – webrequests (Firebase Hosting)

Jeder Logeintrag hat eine vordefinierte Struktur und abfragbare Felder (siehe LogEntry). Bei Hosting sind einige Felder standardmäßig für eine HTTP-Anfrage vorgesehen. Es gibt aber auch andere Feldwerte, die aus der Verarbeitung stammen, die Hosting für jede Anfrage durchführt.

Feld Beschreibung
Firebase Hosting speichert die folgenden Felder im httpRequest-Objekt des Logeintrags.
Diese Felder sind in der HTTP-Spezifikation definiert.
cacheHit Ob die Ressource der Antwort im Hosting-CDN im Cache vorhanden war
latency Dauer der Anfrage in Sekunden mit dem Suffix s (z. B. 1.256s)
protocol Das für die Anfrage verwendete Protokoll (z. B. HTTP/1.1, HTTP/2 oder websocket)
referer Die Adresse der vorherigen Webseite, über die ein Link zur aktuell angeforderten Seite aufgerufen wurde (falls vorhanden)
remoteIp Die IP-Adresse des Clients, von dem die Anfrage stammt
requestMethod Die Anfragemethode (GET, POST, PUT usw.)
requestSize Größe der Anfrage in Byte
requestUrl Die vollständige URL der Anfrage (z. B.
https://foo.web.app/bar oder https://custom.domain.com?query=param)
responseSize Die Größe der HTTP-Antwort in Byte
serverIp nicht ausgefüllt
status Der HTTP-Antwortstatus (z. B. 200 oder 404)
userAgent Der User-Agent-Header der Anfrage
Firebase Hosting speichert zusätzliche Felder im jsonPayload-Objekt des Logeintrags.
acceptEncoding (aus der HTTP-Anfrage) Welche Inhaltcodierung, in der Regel ein Komprimierungsalgorithmus, der Client unterstützt (z. B. gzip oder compress)
billable Ob die Anfrage Ihrem Projekt in Rechnung gestellt wurde
customDomain Ob die Anfrage für eine benutzerdefinierte Domain erfolgt ist
hostname Der Hostname, an den die Anfrage gesendet wurde
remoteIpCountry Das Land, aus dem die Anfrage stammt
remoteIpCity Die Stadt, aus der die Anfrage stammt

Logbasierte Messwerte verwenden

Sie können logbasierte Messwerte aufrufen und erstellen und diese dann in Cloud Monitoring verwenden, um Diagramme und Benachrichtigungsrichtlinien zu erstellen.

  • Sie können vordefinierte Systemmesswerte verwenden, die automatisch erfasst werden, z. B. die Anzahl der Logging-Ereignisse, die innerhalb eines bestimmten Zeitraums aufgetreten sind.

  • Erstellen Sie benutzerdefinierte Messwerte für Ihr Projekt. Sie können die Anzahl der Logeinträge zählen, die mit einer bestimmten Abfrage übereinstimmen, oder bestimmte Werte in den übereinstimmenden Logeinträgen verfolgen. Sie können mit regulären Ausdrücken filtern.

  • Mit Cloud Monitoring können Sie die Anzahl der Logeinträge mit bestimmten Nachrichten aufzeichnen oder in Logeinträgen enthaltene Angaben zu Latenzen extrahieren. Sie können diese Messwerte dann in Diagrammen und Benachrichtigungsrichtlinien verwenden.

Firebase Hosting generiert außerdem die folgenden Hosting-spezifischen Protokollierungsmesswerte. Diese Messwerte beziehen sich nicht auf einen bestimmten Logeintrag, sondern auf die gesamte Hosting-Website.

  • log_bytes: Gesamtdatennutzung in Byte für jede Website

  • response_count: Gesamtzahl der Antworten, die für die Website geschrieben wurden

    Dieser Messwert enthält das Feld „HTTP-Status“, sodass Sie beispielsweise HTTP-Antworten nach Status darstellen können.

Protokolle in andere Google Cloud-Tools exportieren

Sie können die Logs Ihrer Website auch in andere Google Cloud-Tools wie Cloud Monitoring oder BigQuery exportieren, z. B.:

  • Mit Cloud Monitoring können Sie logbasierte Messwerte erstellen, die Sie in Diagrammen und Benachrichtigungsrichtlinien verwenden können.

  • Mit BigQuery haben Sie folgende Möglichkeiten:

    • Mit Data Studio Dashboards mit Ihren Hosting-Daten erstellen
    • Führen Sie Abfragen aus, um mehr über Ihre Anfragen zu erfahren (z. B. durchschnittliche Antwortgröße, Cache-Treffer und ‑Ausfälle).
    • Hier erfahren Sie, welche URLs Ihre Nutzer tatsächlich anfordern.
    • Kombinieren Sie Ihre Hosting-Daten mit anderen Firebase-Daten, die Sie nach BigQuery exportiert haben, und stellen Sie neue Abfragen.