When you run builds, Cloud Build collects and stores your build logs. This page explains how to store, view, and delete build logs.
Choosing where to store build logs
By default, Cloud Build stores build logs in both Logging
and Cloud Storage. In your Cloud Build configuration file, add a
logging
field to store build logs in Logging or Cloud Storage. To
store build logs only in Cloud Logging:
In your build config file, set the
loggingMode
field toCLOUD_LOGGING_ONLY
: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_ONLYY" } }
Use the build config file to manually start a build or to automate builds using triggers.
Storing build logs in the default Google-created bucket
By default, Cloud Build stores your build logs in a Google-created Cloud Storage bucket. You can view build logs store in the Google-created Cloud Storage bucket, but you cannot make any other changes to it. If you require full control over your logs bucket, store the logs in a user-created Cloud Storage bucket.
Storing build logs in a user-created bucket
IAM permissions:
If your Cloud Storage bucket and Cloud Build are in the same Cloud project, your Cloud Build service account has the necessary IAM permissions by default. You do not have to grant any additional permissions.
If your Cloud Storage bucket and Cloud Build are in different Cloud projects, grant the Storage Admin role to the Cloud Build service account:
Open the IAM page:
Select the project in which you're running builds using Cloud Build.
In the permissions table, locate the email address ending with
@cloudbuild.gserviceaccount.com
and note it down. This is your Cloud Build service account.Open the IAM page in the project where your Cloud Storage bucket is located:
Click Add.
Enter the email address of the Cloud Build service account.
Select Cloud Storage > Storage Admin.
Click Save.
To specify a Cloud Storage bucket to store build logs:
In your Cloud project, create a Cloud Storage bucket to store your build logs.
In your config file, add a
logsBucket
field pointing to the Cloud Storage bucket that you created to store build logs. The following example build config file contains instructions to build a container image and store the build logs in a bucket namedmylogsbucket
:YAML
steps: - name: 'gcr.io/cloud-builders/docker' args: [ 'build', '-t', 'gcr.io/myproject/myimage', '.' ] logsBucket: 'gs://mylogsbucket'
JSON
{ "steps": [ { "name": "gcr.io/cloud-builders/docker", "args": [ "build", "-t", "gcr.io/myproject/myimage", "." ] } ], "logsBucket": "gs://mylogsbucket" }
Use the build config file to manually start a build or to automate builds using triggers.
When the build completes, Cloud Build stores the logs in the Cloud Storage bucket you specified in the build config file.
Viewing build logs
IAM permissions:
If your build logs are in the default Google-created Cloud Storage bucket, grant the Project Viewer role on the project where the build is configured to members who want to view build logs:
Open the IAM page:
Select your project and click Open.
In the permissions table, locate the email ID of the member and click on the pencil icon.
Select Project > Viewer role.
Click Save.
If your build logs are in a user-specified Cloud Storage bucket, grant the Storage Object Viewer role to to members who want to view build logs:
Open the IAM page:
Select your project and click Open.
In the permissions table, locate the email ID of the member and click on the pencil icon.
Select Cloud Storage > Storage Object Viewer role.
Click Save.
To view build logs:
Console
Open the Cloud Build page in the Google Cloud Console.
Select your project and click Open.
In the Build history page, click on a particular build.
In the Build details page, under Steps, click on Build summary to view build logs for your entire build or click on a build step to view build logs for that step.
gcloud
Run the gcloud builds log
command where
build-id is the ID of the build for which you want to
get build logs. The build ID is displayed at the end of the build submission
process when you run gcloud builds submit
, or in the ID column when you run
gcloud builds list
.
gcloud builds log build-id
Deleting build logs
You cannot delete build logs in the Google-created logs bucket.
To delete build logs in a user-created logs bucket:
Grant the Storage Object Admin role to the user or the service account deleting logs.
Delete the build logs using the instructions to delete Cloud Storage objects in Deleting objects.
To delete the user-created logs bucket:
Grant the Storage Admin role to the user or the service account deleting the logs bucket.
Delete the logs bucket using the instructions to delete a bucket in Deleting buckets.
What's next
- Learn about audit logs created by Cloud Build.
- Learn how to view build results.
- Learn more about Cloud Build IAM permissions.