From 3006072065ed751ed4a4f268eb5ef57ed428e8c6 Mon Sep 17 00:00:00 2001 From: Seth Vargo Date: Tue, 2 Mar 2021 15:25:31 -0500 Subject: [PATCH] Allow customizing log retention period --- terraform/main.tf | 13 +++++++++++++ terraform/variables.tf | 6 ++++++ 2 files changed, 19 insertions(+) diff --git a/terraform/main.tf b/terraform/main.tf index ea677fab3..9829b9121 100644 --- a/terraform/main.tf +++ b/terraform/main.tf @@ -53,6 +53,7 @@ resource "google_project_service" "services" { "firebase.googleapis.com", "iam.googleapis.com", "identitytoolkit.googleapis.com", + "logging.googleapis.com", "monitoring.googleapis.com", "redis.googleapis.com", "run.googleapis.com", @@ -110,6 +111,18 @@ resource "google_vpc_access_connector" "connector" { ] } +resource "google_logging_project_bucket_config" "basic" { + project = var.project + location = "global" + retention_days = var.log_retention_period + bucket_id = "_Default" + + depends_on = [ + google_project_service.services["logging.googleapis.com"], + google_project_service.services["stackdriver.googleapis.com"], + ] +} + resource "null_resource" "build" { provisioner "local-exec" { environment = { diff --git a/terraform/variables.tf b/terraform/variables.tf index f0497c2eb..d24ee69d9 100644 --- a/terraform/variables.tf +++ b/terraform/variables.tf @@ -251,6 +251,12 @@ variable "enable_lb_logging" { EOT } +variable "log_retention_period" { + type = number + default = 30 + description = "Number of days to retain logs" +} + // Note: in Cloud Run/Knative, there are two kinds of annotations. // - Service level annotations: applies to all revisions in the service. E.g. // the ingress restriction