создайте 2 критерия в предупреждении, которое отслеживает несколько критериев в terraform (azure)

#azure #cloud #devops #terraform-provider-azure #infrastructure

#лазурь #облако #devops #поставщик терраформ-azure #инфраструктура

Вопрос:

Я хочу добавить еще один критерий, но получаю эту ошибку, когда правило предупреждений содержит несколько критериев, использование измерений ограничено одним значением для каждого измерения в каждом критерии

 resource "azurerm_monitor_metric_alert" "example" {  name = "example-metricalert"  resource_group_name = azurerm_resource_group.main.name  scopes = [azurerm_storage_account.to_monitor.id]  description = "Action will be triggered when Transactions count is greater than 50."   criteria {  metric_namespace = "Microsoft.Storage/storageAccounts"  metric_name = "Transactions"  aggregation = "Total"  operator = "GreaterThan"  threshold = 50   dimension {  name = "ApiName"  operator = "Include"  values = ["*"]  }  }    criteria {  metric_namespace = "Microsoft.Storage/storageAccounts"  metric_name = "Transactions"  aggregation = "Total"  operator = "GreaterThan"  threshold = 50   dimension {  name = "ApiName"  operator = "Include"  values = ["*"]  }  }   action {  action_group_id = azurerm_monitor_action_group.main.id  }  

Комментарии:

1. Здравствуйте @Mr_Unchanied, AFAIK невозможно создать другое условие/критерии, если существует несколько измерений, т. е. Значение измерений не может быть [«*»]. Если вы можете указать там конкретное имя API, вы можете создать другие критерии. Это то же самое и с портала

Ответ №1:

Вы не можете установить 2 условия для правила предупреждения, если вы задали несколько измерений для одного условия, т. Е. Вы не можете использовать Значение измерения как ["*"] .

введите описание изображения здесь

Если вы хотите, чтобы в одном предупреждении о метрике было несколько условий, вам придется указать некоторое значение измерения для одного критерия и то же измерение для других критериев, или вы также не можете использовать блок измерения для обоих .

Например, вы можете сослаться на приведенный ниже код:

 resource "azurerm_monitor_metric_alert" "example" {  name = "example-metricalert"  resource_group_name = azurerm_resource_group.main.name  scopes = [azurerm_storage_account.to_monitor.id]  description = "Action will be triggered when Transactions count is greater than 50."   criteria {  metric_namespace = "Microsoft.Storage/storageAccounts"  metric_name = "Transactions"  aggregation = "Total"  operator = "GreaterThan"  threshold = 50   dimension {  name = "ApiName"  operator = "Include"  values = ["GetBlobServiceProperties"]   }  } criteria {  metric_namespace = "Microsoft.Storage/storageAccounts"  metric_name = "SuccessE2ELatency"  aggregation = "Average"  operator = "GreaterThan"  threshold = 10  dimension {  name = "ApiName"  operator = "Include"  values = ["GetBlobServiceProperties"]   }  }    action {  action_group_id = azurerm_monitor_action_group.main.id  } }  

введите описание изображения здесь

или

 resource "azurerm_monitor_metric_alert" "example1" {  name = "example1-metricalert"  resource_group_name = azurerm_resource_group.main.name  scopes = [azurerm_storage_account.to_monitor.id]  description = "Action will be triggered when Transactions count is greater than 50."   criteria {  metric_namespace = "Microsoft.Storage/storageAccounts"  metric_name = "Transactions"  aggregation = "Total"  operator = "GreaterThan"  threshold = 50  } criteria {  metric_namespace = "Microsoft.Storage/storageAccounts"  metric_name = "SuccessE2ELatency"  aggregation = "Average"  operator = "GreaterThan"  threshold = 10  }    action {  action_group_id = azurerm_monitor_action_group.main.id  } }  

введите описание изображения здесь

Комментарии:

1. Спасибо за объяснение