#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. Спасибо за объяснение