Wenn Sie Builds ausführen, erfasst und speichert Cloud Build Ihre Build-Logs. Auf dieser Seite wird erläutert, wie Sie Build-Logs speichern, aufrufen und löschen.
Speicherort für Build-Logs auswählen
Sie können Cloud Build so konfigurieren, dass Build-Logs in Cloud Logging oder in Cloud Storage gespeichert werden. Fügen Sie dazu das Feld logging
in Ihre Cloud Build-Konfigurationsdatei ein.
Wenn Sie in der Build-Konfigurationsdatei kein logging
-Feld angeben, speichert Cloud Build sowohl Build-Logs als auch Cloud Storage.
Mit den folgenden Schritten werden Build-Logs nur in Logging gespeichert:
Legen Sie in der Build-Konfigurationsdatei den Wert von
logging
aufCLOUD_LOGGING_ONLY
fest:YAML
steps: - name: 'gcr.io/cloud-builders/docker' args: ['build', '-t', 'gcr.io/myproject/myimage', '.'] options: logging: CLOUD_LOGGING_ONLY
JSON
{ "steps": [ { "name": "gcr.io/cloud-builders/docker", "args": [ "build", "-t", "gcr.io/myproject/myimage", "." ] } ], "options": { "logging": "CLOUD_LOGGING_ONLY" } }
Verwenden Sie die Build-Konfigurationsdatei, um einen Build über die Befehlszeile, die API oder über Trigger zu starten.
Speichern von Build-Logs im von Google erstellten Standard-Bucket
Cloud Build speichert Ihre Build-Logs standardmäßig in einem von Google erstellten Cloud Storage-Bucket. Sie können die in dem von Google erstellten Cloud Storage-Bucket gespeicherten Build-Logs anzeigen, aber keine weiteren Änderungen daran vornehmen. Wenn Sie die volle Kontrolle über Ihren Log-Bucket benötigen, speichern Sie die Logs in einem vom Nutzer erstellten Cloud Storage-Bucket.
Build-Logs in einem vom Nutzer erstellten Bucket speichern
IAM-Berechtigungen:
Um Build-Logs in Ihrem eigenen Cloud-Storage-Bucket zu speichern, müssen Sie zuerst dem Cloud Build-Dienstkonto oder dem benutzerdefinierten Dienstkonto die erforderlichen IAM-Berechtigungen erteilen:
Wenn sich der Cloud Storage-Bucket und Cloud Build im selben Cloud-Projekt befinden und Sie das Cloud Build-Dienstkonto verwenden, hat Ihr Cloud Build-Dienstkonto standardmäßig die erforderlichen IAM-Berechtigungen. Sie müssen keine zusätzlichen Berechtigungen erteilen.
Wenn sich Ihr Cloud Storage-Bucket und Cloud Build im selben Cloud-Projekt befinden und Sie ein benutzerspezifisches Dienstkonto verwenden, gewähren Sie dem Dienstkonto die Rolle Storage-Administrator. Eine Anleitung zum Zuweisen einer Rolle zu einem Dienstkonto finden Sie unter Rollen für das Projekt zuweisen.
Wenn sich Ihr Cloud Storage-Bucket und Cloud Build in verschiedenen Cloud-Projekten befinden, weisen Sie dem Cloud Build-Dienstkonto die Rolle Storage-Administrator zu:
Zur Seite "IAM":
Wählen Sie das Projekt aus, in dem Sie Builds mit Cloud Build ausführen.
Suchen Sie in der Tabelle mit den Berechtigungen nach der E-Mail-Adresse, die mit
@cloudbuild.gserviceaccount.com
endet, und notieren Sie sie. Dies ist Ihr Cloud Build-Dienstkonto.Öffnen Sie die IAM-Seite in dem Projekt, in dem sich Ihr Cloud Storage-Bucket befindet:
Klicken Sie auf Add.
Geben Sie die E-Mail-Adresse des Cloud Build-Dienstkontos ein.
Wählen Sie Cloud Storage und dann Storage-Administrator aus.
Klicken Sie auf Speichern.
So geben Sie einen Cloud Storage-Bucket zum Speichern von Build-Logs an:
Erstellen Sie in Ihrem Cloud-Projekt einen Cloud Storage-Bucket zum Speichern Ihrer Build-Logs.
Fügen Sie der Build-Konfigurationsdatei das Feld
logsBucket
hinzu, das auf den Cloud Storage-Bucket verweist, den Sie zum Speichern von Build-Logs erstellt haben. Die folgende Build-Konfigurationsdatei enthält eine Anleitung zum Erstellen eines Container-Images und zum Speichern der Build-Logs in einem Bucket namensmylogsbucket
:YAML
steps: - name: 'gcr.io/cloud-builders/docker' args: [ 'build', '-t', 'gcr.io/myproject/myimage', '.' ] logsBucket: 'gs://mylogsbucket' options: logging: GCS_ONLY
JSON
{ "steps": [ { "name": "gcr.io/cloud-builders/docker", "args": [ "build", "-t", "gcr.io/myproject/myimage", "." ] } ], "logsBucket": "gs://mylogsbucket", "options": { "logging": "GCS_ONLY" } }
Verwenden Sie die Build-Konfigurationsdatei, um einen Build über die Befehlszeile, die API oder über Trigger zu starten.
Wenn der Build abgeschlossen ist, speichert Cloud Build die Logs in dem Cloud Storage-Bucket, den Sie in der Build-Konfigurationsdatei angegeben haben.
Build-Logs ansehen
IAM-Berechtigungen:
Wenn sich Ihre Build-Logs in Logging befinden, gewähren Sie den Hauptkonten, die die Build-Logs einsehen möchten, die Rolle Log-Betrachter für das Projekt, in dem der Build konfiguriert ist:
Zur Seite "IAM":
Wählen Sie Ihr Projekt aus und klicken Sie auf Öffnen.
Suchen Sie in der Berechtigungstabelle nach der E-Mail-ID des Hauptkontos und klicken Sie auf das Stiftsymbol.
Wählen Sie die Rolle Logging > Log-Betrachter aus.
Klicken Sie auf Speichern.
Wenn sich Ihre Build-Logs im von Google erstellten Cloud Storage-Standard-Bucket befinden, weisen Sie Hauptkonten, die Build-Logs ansehen möchten, die Rolle Projektbetrachter für das Projekt zu, in dem der Build konfiguriert ist:
Zur Seite "IAM":
Wählen Sie Ihr Projekt aus und klicken Sie auf Öffnen.
Suchen Sie in der Berechtigungstabelle nach der E-Mail-ID des Hauptkontos und klicken Sie auf das Stiftsymbol.
Wählen Sie Projekt und dann Betrachter aus.
Klicken Sie auf Speichern.
Wenn sich Ihre Build-Logs in einem benutzerdefinierten Cloud Storage-Bucket befinden, weisen Sie Hauptkonten, die Build-Logs ansehen möchten, die Rolle Storage-Objekt-Betrachter zu:
Zur Seite "IAM":
Wählen Sie Ihr Projekt aus und klicken Sie auf Öffnen.
Suchen Sie in der Berechtigungstabelle nach der E-Mail-ID des Hauptkontos und klicken Sie auf das Stiftsymbol.
Wählen Sie die Rolle Cloud Storage und dann Storage-Objekt-Betrachter aus.
Klicken Sie auf Speichern.
So rufen Sie Build-Logs auf:
Console
Öffnen Sie die Cloud Build-Seite in der Google Cloud Console.
Wählen Sie Ihr Projekt aus und klicken Sie auf Öffnen.
Wählen Sie im Drop-down-Menü Region die Region für den Build aus.
Klicken Sie auf der Seite Build-Verlauf auf einen bestimmten Build.
Klicken Sie auf der Seite Build-Details unter Schritte auf Build-Zusammenfassung, um Build-Logs für den gesamten Build aufzurufen, oder klicken Sie auf einen Build-Schritt, um Build-Logs für diesen Schritt aufzurufen.
Wenn Ihre Logs in Logging gespeichert sind, klicken Sie im Bereich Build-Log auf das Symbol
, um die Logs im Log-Explorer aufzurufen.
gcloud
Führen Sie den Befehl gcloud builds log
aus, wobei build-id die ID des Builds ist, für den Sie Build-Logs abrufen möchten. Die Build-ID wird am Ende des Übermittlungsprozesses für den Build angezeigt, wenn Sie gcloud builds submit
ausführen, oder in der ID-Spalte, wenn Sie gcloud builds list
ausführen.
gcloud builds log build-id
Build-Logs löschen
Sie können keine Build-Logs im von Google erstellten Log-Bucket löschen.
So löschen Sie Build-Logs in einem vom Nutzer erstellten Log-Bucket:
Gewähren Sie dem Nutzer oder dem Dienstkonto, das Logs löscht, die Rolle Storage Object Admin.
Löschen Sie die Build-Logs gemäß der Anleitung zum Löschen von Cloud Storage-Objekten unter Objekte löschen.
So löschen Sie den vom Nutzer erstellten Log-Bucket:
Weisen Sie dem Nutzer oder dem Dienstkonto, das den Log-Bucket löscht, die Rolle Storage-Administrator zu.
Löschen Sie den Log-Bucket unter Verwendung der Anleitung zum Löschen von Buckets.
Weitere Informationen
- Informationen zu Audit-Logs, die von Cloud Build erstellt wurden
- Build-Ergebnisse aufrufen
- Informationen zu Cloud Build-IAM-Berechtigungen.