GSP1088
Übersicht
Cloud Logging ist ein vollständig verwalteter Dienst, mit dem Sie Logging-Daten und -Ereignisse aus Google Cloud speichern, durchsuchen, analysieren, überwachen und Benachrichtigungen darüber auslösen können.
In diesem Lab lernen Sie die Features und Tools von Cloud Logging kennen, mit denen Sie Einblicke in Ihre Anwendungen erhalten.
Lerninhalte
Aufgaben in diesem Lab:
- Cloud Logging effektiv nutzen und Informationen zu Anwendungen erhalten, die in der Google Kubernetes Engine (GKE) ausgeführt werden
- Abfragen mit Beobachtbarkeitsanalysen effektiv erstellen und ausführen
Im Lab verwendete Demo-Anwendung
In diesem Lab arbeiten Sie ein Szenario durch, das auf dieser Mikrodienst-Demo-Anwendung basiert, die in einem GKE-Cluster bereitgestellt wurde. In dieser Demo-App sind viele Mikrodienste und Abhängigkeiten eingebettet.
Einrichtung und Anforderungen
Vor dem Klick auf „Start Lab“ (Lab starten)
Lesen Sie diese Anleitung. Labs sind zeitlich begrenzt und können nicht pausiert werden. Der Timer beginnt zu laufen, wenn Sie auf Lab starten klicken, und zeigt Ihnen, wie lange Google Cloud-Ressourcen für das Lab verfügbar sind.
In diesem praxisorientierten Lab können Sie die Lab-Aktivitäten in einer echten Cloud-Umgebung durchführen – nicht in einer Simulations- oder Demo-Umgebung. Dazu erhalten Sie neue, temporäre Anmeldedaten, mit denen Sie für die Dauer des Labs auf Google Cloud zugreifen können.
Für dieses Lab benötigen Sie Folgendes:
- Einen Standardbrowser (empfohlen wird Chrome)
Hinweis: Nutzen Sie den privaten oder Inkognitomodus (empfohlen), um dieses Lab durchzuführen. So wird verhindert, dass es zu Konflikten zwischen Ihrem persönlichen Konto und dem Teilnehmerkonto kommt und zusätzliche Gebühren für Ihr persönliches Konto erhoben werden.
- Zeit für die Durchführung des Labs – denken Sie daran, dass Sie ein begonnenes Lab nicht unterbrechen können.
Hinweis: Verwenden Sie für dieses Lab nur das Teilnehmerkonto. Wenn Sie ein anderes Google Cloud-Konto verwenden, fallen dafür möglicherweise Kosten an.
Lab starten und bei der Google Cloud Console anmelden
-
Klicken Sie auf Lab starten. Wenn Sie für das Lab bezahlen müssen, wird ein Dialogfeld geöffnet, in dem Sie Ihre Zahlungsmethode auswählen können.
Auf der rechten Seite befindet sich der Bereich Lab-Einrichtung und ‑Zugriff:
- Button Google Cloud Console öffnen
- Die temporären Anmeldedaten (Nutzername und Passwort), die Sie für dieses Lab verwenden müssen
- Gegebenenfalls weitere Informationen für dieses Lab
Der Lab-Timer befindet sich oben auf der Seite und zeigt die verbleibende Zeit an.
-
Klicken Sie auf Google Cloud Console öffnen. Wenn Sie Chrome verwenden, können Sie auch rechtsklicken und Link in Inkognitofenster öffnen auswählen.
Im Lab werden Ressourcen aktiviert. Anschließend wird ein weiterer Tab mit der Seite „Anmelden“ geöffnet.
Tipp: Ordnen Sie die Tabs nebeneinander in separaten Fenstern an.
Hinweis: Wird das Dialogfeld Konto auswählen angezeigt, klicken Sie auf Anderes Konto verwenden.
-
Kopieren Sie bei Bedarf den folgenden Nutzernamen und fügen Sie ihn in das Dialogfeld Anmelden ein.
{{{user_0.username | "Username"}}}
Sie finden den Nutzernamen auch im Bereich Lab-Einrichtung und ‑Zugriff.
-
Klicken Sie auf Weiter.
-
Kopieren Sie das folgende Passwort und fügen Sie es in das Dialogfeld Willkommen ein.
{{{user_0.password | "Password"}}}
Sie finden das Passwort auch im Bereich Lab-Einrichtung und ‑Zugriff.
-
Klicken Sie auf Weiter.
Wichtig: Sie müssen die für das Lab bereitgestellten Anmeldedaten verwenden. Nutzen Sie nicht die Anmeldedaten Ihres Google Cloud-Kontos.
Hinweis: Wenn Sie Ihr eigenes Google Cloud-Konto für dieses Lab nutzen, können zusätzliche Kosten anfallen.
-
Klicken Sie sich durch die nachfolgenden Seiten:
- Akzeptieren Sie die Nutzungsbedingungen.
- Fügen Sie keine Wiederherstellungsoptionen oder 2-Faktor-Authentifizierung hinzu, da dies nur ein temporäres Konto ist.
- Melden Sie sich nicht für kostenlose Testversionen an.
Nach wenigen Augenblicken wird die Google Cloud Console in diesem Tab geöffnet.
Hinweis: Wenn Sie auf Google Cloud-Produkte und ‑Dienste zugreifen möchten, klicken Sie auf das Navigationsmenü oder geben Sie den Namen des Produkts oder Dienstes in das Feld Suchen ein.
Cloud Shell aktivieren
Cloud Shell ist eine virtuelle Maschine, auf der Entwicklertools installiert sind. Sie bietet ein Basisverzeichnis mit 5 GB nichtflüchtigem Speicher und läuft auf Google Cloud. Mit Cloud Shell erhalten Sie Befehlszeilenzugriff auf Ihre Google Cloud-Ressourcen.
-
Klicken Sie oben in der Google Cloud Console auf Cloud Shell aktivieren
.
-
Klicken Sie sich durch die folgenden Fenster:
- Fahren Sie mit dem Informationsfenster zu Cloud Shell fort.
- Autorisieren Sie Cloud Shell, Ihre Anmeldedaten für Google Cloud API-Aufrufe zu verwenden.
Wenn eine Verbindung besteht, sind Sie bereits authentifiziert und das Projekt ist auf Project_ID, eingestellt. Die Ausgabe enthält eine Zeile, in der die Project_ID für diese Sitzung angegeben ist:
Ihr Cloud-Projekt in dieser Sitzung ist festgelegt als {{{project_0.project_id | "PROJECT_ID"}}}
gcloud ist das Befehlszeilentool für Google Cloud. Das Tool ist in Cloud Shell vorinstalliert und unterstützt die Tab-Vervollständigung.
- (Optional) Sie können den aktiven Kontonamen mit diesem Befehl auflisten:
gcloud auth list
- Klicken Sie auf Autorisieren.
Ausgabe:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
Um das aktive Konto festzulegen, führen Sie diesen Befehl aus:
$ gcloud config set account `ACCOUNT`
- (Optional) Sie können die Projekt-ID mit diesem Befehl auflisten:
gcloud config list project
Ausgabe:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Hinweis: Die vollständige Dokumentation für gcloud finden Sie in Google Cloud in der Übersicht zur gcloud CLI.
Aufgabe 1: Einrichten der Infrastruktur
GKE-Cluster prüfen
Stellen Sie eine Verbindung zu einem GKE-Cluster her und prüfen Sie, ob er korrekt erstellt wurde.
- Legen Sie in Cloud Shell die Zone in
gcloud fest:
gcloud config set compute/zone {{{project_0.default_zone|placeholder}}}
- Mit dem folgenden Befehl können Sie den Status des Clusters aufrufen:
gcloud container clusters list
Es sollte ein ähnlicher Status angezeigt werden:
NAME: day2-ops
LOCATION: us-west1
MASTER_VERSION: 1.31.5-gke.1023000
MASTER_IP: 34.169.197.173
MACHINE_TYPE: e2-standard-2
NODE_VERSION: 1.31.5-gke.1023000
NUM_NODES: 3
STATUS: RUNNING
Als Status des Clusters sollte „RUNNING“ angezeigt werden. Wenn der Status immer noch PROVISIONING lautet, warten Sie einen Moment und führen Sie den obigen Befehl noch einmal aus. Führen Sie den Befehl so oft aus, bis der Status RUNNING angezeigt wird.
Sie können den Fortschritt auch in der Google Cloud Console prüfen. Klicken Sie im Navigationsmenü (
) auf Kubernetes Engine > Cluster.
- Sobald der Status „RUNNING“ angezeigt wird, können Sie die Anmeldedaten für den Cluster abrufen:
gcloud container clusters get-credentials day2-ops --region {{{project_0.default_region|placeholder}}}
Die Ausgabe sollte so aussehen:
Fetching cluster endpoint and auth data.
kubeconfig entry generated for day2-ops.
- Prüfen Sie, ob die Knoten erstellt wurden:
kubectl get nodes
Die Ausgabe sollte so aussehen:
NAME STATUS ROLES AGE VERSION
gke-day2-ops-day2-ops-node-pool-0d9c7ef3-xc44 Ready <none> 11m v1.31.5-gke.1023000
gke-day2-ops-day2-ops-node-pool-b17ac6d6-tch7 Ready <none> 11m v1.31.5-gke.1023000
gke-day2-ops-day2-ops-node-pool-ed506ae8-wsc5 Ready <none> 11m v1.31.5-gke.1023000
Aufgabe 2: Anwendung bereitstellen
Als Nächstes stellen Sie eine Mikrodienstanwendung namens „Online Boutique“ in Ihrem Cluster bereit, um eine tatsächliche Arbeitslast zu erstellen, die Sie überwachen können.
- Führen Sie folgenden Befehl aus, um das Repository zu klonen:
git clone https://github.com/GoogleCloudPlatform/microservices-demo.git
- Wechseln Sie in das Verzeichnis
microservices-demo:
cd microservices-demo
- Installieren Sie die Anwendung mit
kubectl:
kubectl apply -f release/kubernetes-manifests.yaml
- Prüfen Sie, ob alles korrekt ausgeführt wird:
kubectl get pods
Die Ausgabe sollte in etwa so aussehen. Wiederholen Sie den Befehl, bis alle Pods den Status „Running“ haben und fahren Sie dann mit dem nächsten Schritt fort.
NAME READY STATUS RESTARTS AGE
adservice-55f94cfd9c-4lvml 1/1 Running 0 20m
cartservice-6f4946f9b8-6wtff 1/1 Running 2 20m
checkoutservice-5688779d8c-l6crl 1/1 Running 0 20m
currencyservice-665d6f4569-b4sbm 1/1 Running 0 20m
emailservice-684c89bcb8-h48sq 1/1 Running 0 20m
frontend-67c8475b7d-vktsn 1/1 Running 0 20m
loadgenerator-6d646566db-p422w 1/1 Running 0 20m
paymentservice-858d89d64c-hmpkg 1/1 Running 0 20m
productcatalogservice-bcd85cb5-d6xp4 1/1 Running 0 20m
recommendationservice-685d7d6cd9-pxd9g 1/1 Running 0 20m
redis-cart-9b864d47f-c9xc6 1/1 Running 0 20m
shippingservice-5948f9fb5c-vndcp 1/1 Running 0 20m
- Führen Sie die folgenden Befehle aus, um die externe IP-Adresse der Anwendung abzurufen.
export EXTERNAL_IP=$(kubectl get service frontend-external -o jsonpath="{.status.loadBalancer.ingress[0].ip}")
echo $EXTERNAL_IP
Eine IP-Adresse wird erst zurückgegeben, wenn der Dienst bereitgestellt wurde. Möglicherweise müssen Sie die Befehle wiederholen, bis eine externe IP-Adresse zugewiesen wurde.
Wenn die IP-Adresse zugewiesen ist, sollte die Ausgabe in etwa so aussehen:
35.222.235.86
- Prüfen Sie abschließend, ob die Anwendung ausgeführt wird:
curl -o /dev/null -s -w "%{http_code}\n" http://${EXTERNAL_IP}
Die Bestätigung sieht folgendermaßen aus:
200
Nach der Bereitstellung der Anwendung können Sie den Status auch in der Console aufrufen.
-
Klicken Sie auf der Seite „Kubernetes Engine“ im linken Bereich auf Arbeitslasten, um zu sehen, dass alle Pods in Ordnung sind.
-
Klicken Sie im linken Bereich auf Gateways, Dienste und eingehender Traffic, dann auf den Tab Dienste und prüfen Sie, ob alle Dienste den Status „OK“ haben.
Anwendung öffnen
Klicken Sie unter Gateways, Dienste und eingehender Traffic > Dienste auf die Endpunkt-IP des Dienstes frontend-external.
Es sollte eine Demo-Webseite geöffnet werden, die in etwa so aussieht:
Hinweis: Möglicherweise müssen Sie auf den Button „Weiter zur Website“ klicken, wenn Sie dazu aufgefordert werden.
Klicken Sie auf Fortschritt prüfen.
Anwendung bereitstellen
Aufgabe 3: Log-Buckets verwalten
Es gibt zwei Möglichkeiten, die Beobachtbarkeitsanalyse zu aktivieren. Eine Möglichkeit besteht darin, ein Upgrade für einen vorhandenen Bucket durchzuführen. Die andere Möglichkeit besteht darin, einen neuen Log-Bucket mit aktivierter Beobachtbarkeitsanalyse zu erstellen.
Vorhandenen Bucket upgraden
Mit den folgenden Schritten können Sie ein Upgrade für einen vorhandenen Log-Bucket durchführen.
-
Klicken Sie in der Console im Navigationsmenü (
) auf Alle Produkte ansehen > Beobachtbarkeit > Logging. Klicken Sie auf Favorit, um später im Lab leichter darauf zugreifen zu können.
-
Klicken Sie auf Logspeicher.
-
Klicken Sie für einen vorhandenen Bucket, Standard-Bucket, auf Upgrade.
-
Klicken Sie im Bestätigungsdialogfeld auf Upgrade.
-
Warten Sie, bis sich der Status auf Aktualisiert ändert.
-
Klicken Sie auf Öffnen und wählen Sie die Ansicht _AllLogs aus.
Die Seite „Beobachtbarkeitsanalysen“ wird geöffnet.
Neuen Log-Bucket erstellen
Mit den folgenden Schritten können Sie einen neuen Log-Bucket erstellen.
-
Klicken Sie im linken Bereich auf Logspeicher und dann oben im Fenster „Logspeicher“ auf Log-Bucket erstellen.
-
Geben Sie dem Bucket einen Namen, z. B. day2ops-log.
-
Setzen Sie ein Häkchen bei Upgrade zur Verwendung von Observability Analytics und Neues BigQuery-Dataset erstellen, das mit diesem Bucket verknüpft ist.
-
Geben Sie den Namen des BigQuery-Datasets day2ops_log ein.
-
Wählen Sie im Feld „Region“ die Option Global aus.
Wenn Sie Verknüpftes Dataset in BigQuery erstellen auswählen, wird ein Dataset in BigQuery erstellt, falls noch keines vorhanden ist. Damit können Sie Abfragen in BigQuery ausführen.
- Klicken Sie auf Bucket erstellen, um den Log-Bucket zu erstellen.
Klicken Sie auf Fortschritt prüfen.
Log-Bucket erstellen
In den neuen Log-Bucket schreiben
Es gibt mehrere Möglichkeiten, eine Logsenke zu erstellen, um Logeinträge an den neuen Log-Bucket weiterzuleiten:
- Direkt über den Log-Router.
- Über den Log-Explorer. Sie können Logabfragen ausführen, um die Logs auszuwählen und zu filtern, die Sie beim Erstellen einer Senke interessieren. Der Vorteil dieses Ansatzes besteht darin, dass die Logabfrage automatisch als Filter in die Senkenkonfiguration kopiert wird.
-
Klicken Sie im linken Bereich auf Log-Explorer.
-
Aktivieren Sie oben rechts die Option Abfrage anzeigen und führen Sie die folgende Abfrage im Abfragefeld aus:
resource.type="k8s_container"
-
Klicken Sie auf Aktionen > Senke erstellen.
-
Geben Sie als Namen der Senke day2ops-sink ein.
-
Klicken Sie auf Weiter.
-
Wählen Sie in der Drop-down-Liste für den Senkendienst die Option Logging-Bucket aus.
-
Wählen Sie den neuen Log-Bucket aus, den Sie gerade erstellt haben.
Ihr neuer Log-Bucket sollte in etwa so aussehen:
projects/qwiklabs-gcp-00-xxxxxxx/locations/global/buckets/day2ops-log
- Klicken Sie auf Weiter.
Die Abfrage für den Ressourcentyp sollte bereits im Filter angezeigt werden.
- Klicken Sie auf Senke erstellen.
Warten Sie etwa eine Minute, bis die Senke erstellt wurde.
Klicken Sie auf Fortschritt prüfen.
Logsenke erstellen
Aus dem neuen Log-Bucket lesen
Klicken Sie im linken Bereich auf Log-Explorer. In der Liste Felder im Abschnitt Ressourcentyp sehen Sie, dass es viele verschiedene Ressourcentypen für die Logs gibt.
-
Klicken Sie links oben im Fenster des Log-Explorers auf Projektlogs > Logansicht > den neuen Log-Bucket (den Sie gerade erstellt haben), um die Logs im neuen Log-Bucket aufzurufen.
-
Klicken Sie auf Übernehmen.
Sie sehen, dass „Kubernetes-Container“ jetzt der einzige Ressourcentyp ist und weniger Logeinträge vorhanden sind. Das liegt daran, dass nur gefilterte Logs an den Bucket gesendet werden.
Aufgabe 4: Loganalyse
- Klicken Sie im linken Bereich auf Beobachtbarkeitsanalyse, um die Seite „Beobachtbarkeitsanalyse“ zu öffnen.
Wenn das Abfragefeld leer ist oder Sie vergessen haben, welche Tabelle Sie verwenden sollen, klicken Sie auf den Button Abfrage ausführen, um die Beispielabfrage wiederherzustellen.
Sie können im Abfragefeld eigene Abfragen ausführen. In dieser Aufgabe finden Sie einige Beispiele.
Wichtig: Der Name der Logansicht in der FROM-Anweisung ist für die Log-Buckets unterschiedlich. Achten Sie darauf, den richtigen Ansichtsnamen zu verwenden. Sie können den vorherigen Schritt zur Überprüfung verwenden.
Beispielabfrage zum Ermitteln der minimalen, maximalen und durchschnittlichen Latenz
Wählen Sie im rechten Bereich <> SQL aus. Klicken Sie auf den Button Löschen, um alle vorhandenen Inhalte aus dem Abfrageeditor zu entfernen. Fügen Sie die Abfrage in den Editor ein und wählen Sie Abfrage ausführen aus, um die neuesten Fehler aus den Containern abzurufen.
Verwenden Sie die Abfrage, um die minimale, maximale und durchschnittliche Latenz in einem Zeitraum für den Frontend-Dienst zu ermitteln:
SELECT
hour,
MIN(took_ms) AS min,
MAX(took_ms) AS max,
AVG(took_ms) AS avg
FROM (
SELECT
FORMAT_TIMESTAMP("%H", timestamp) AS hour,
CAST( JSON_VALUE(json_payload,
'$."http.resp.took_ms"') AS INT64 ) AS took_ms
FROM
`{{{project_0.project_id | "PROJECT_ID"}}}.global.day2ops-log._AllLogs`
WHERE
timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 24 HOUR)
AND json_payload IS NOT NULL
AND SEARCH(labels,
"frontend")
AND JSON_VALUE(json_payload.message) = "request complete"
ORDER BY
took_ms DESC,
timestamp ASC )
GROUP BY
1
ORDER BY
1
Beispielabfrage zum Ermitteln der Anzahl der Besuche auf der Produktseite
Verwenden Sie die Abfrage, um herauszufinden, wie oft Nutzer in der letzten Stunde eine bestimmte Produktseite besucht haben:
SELECT
count(*)
FROM
`{{{project_0.project_id | "PROJECT_ID"}}}.global.day2ops-log._AllLogs`
WHERE
text_payload like "GET %/product/L9ECAV7KIM %"
AND
timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR)
Beispielabfrage, um herauszufinden, wie viele Sitzungen mit einem Einkaufswagen-Checkout enden
Verwenden Sie die Abfrage, um herauszufinden, wie viele Sitzungen mit einem Bezahlvorgang enden (POST-Aufruf an den Dienst „/cart/checkout“):
SELECT
JSON_VALUE(json_payload.session),
COUNT(*)
FROM
`{{{project_0.project_id | "PROJECT_ID"}}}.global.day2ops-log._AllLogs`
WHERE
JSON_VALUE(json_payload['http.req.method']) = "POST"
AND JSON_VALUE(json_payload['http.req.path']) = "/cart/checkout"
AND timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR)
GROUP BY
JSON_VALUE(json_payload.session)
Das wars! Sie haben das Lab erfolgreich abgeschlossen.
Sie verfügen nun über Kenntnisse im Umgang mit Cloud Logging, um Informationen zu Anwendungen zu erhalten, die in GKE ausgeführt werden, und Sie haben Abfragen mit Beobachtbarkeitsanalysen erstellt und ausgeführt.
Google Cloud-Schulungen und -Zertifizierungen
In unseren Schulungen erfahren Sie alles zum optimalen Einsatz unserer Google Cloud-Technologien und können sich entsprechend zertifizieren lassen. Unsere Kurse vermitteln technische Fähigkeiten und Best Practices, damit Sie möglichst schnell mit Google Cloud loslegen und Ihr Wissen fortlaufend erweitern können. Wir bieten On-Demand-, Präsenz- und virtuelle Schulungen für Anfänger wie Fortgeschrittene an, die Sie individuell in Ihrem eigenen Zeitplan absolvieren können. Mit unseren Zertifizierungen weisen Sie nach, dass Sie Experte im Bereich Google Cloud-Technologien sind.
Anleitung zuletzt am 6. August 2026 aktualisiert
Lab zuletzt am 6. August 2026 getestet
© 2026 Google LLC. Alle Rechte vorbehalten. Google und das Google-Logo sind Marken von Google LLC. Alle anderen Unternehmens- und Produktnamen können Marken der jeweils mit ihnen verbundenen Unternehmen sein.