我在Google Cloud上有一个 "监控" 项目,希望它可以监控其他几个项目的指标。在Cloud Console中,我可以轻松地将这些项目添加到我的监控项目的指标范围内。但是,我想在Terraform中自动化这个过程。有人知道怎么做吗?
我在Google Cloud上有一个 "监控" 项目,希望它可以监控其他几个项目的指标。在Cloud Console中,我可以轻松地将这些项目添加到我的监控项目的指标范围内。但是,我想在Terraform中自动化这个过程。有人知道怎么做吗?
你可以使用Terraform实现这一点。您需要拥有一个范围项目或一个新项目,该项目将托管来自其他项目的度量。
然后,您可以使用以下Terraform资源将项目添加为受监视的项目:
locals {
project_id = "MY_MONITORING_PROJECT"
metric_scopes = toset([
"MY_MONITORED_PROJECT_1",
"MY_MONITORED_PROJECT_2",
"MY_MONITORED_PROJECT_3"
]) # List of projects included in metric scopes for MY_MONITORING_PROJECT.
}
resource "google_monitoring_monitored_project" "projects_monitored" {
#provider = google-beta # for versions before 4.2.0
for_each = local.metric_scopes
metrics_scope = join("", ["locations/global/metricsScopes/", local.project_id])
name = each.value
}
roles/monitoring.metricsScopesAdmin
或roles/monitoring.admin
角色,才能将它们添加到范围内。