Azure Create Alert через API

Создание оповещения через API в Azure.

Оповещение действительно создается, но поле Категория события отображается как все вместо Административное.

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

Я использовал тот же код ранее, и он работал.

Azure Alert ScreenShot

Если я пытаюсь обновить что-либо через графический интерфейс, выдается ошибка: не удалось обновить предупреждение "Тестирование". Поле категории отсутствует в условии.

Ошибка ScreenShot

PowerShell

Тело для создания оповещения

$Remediate = @" {
"id": "/subscriptions/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/resourceGroups/xxxxxxxxxxxxxxx/providers/microsoft.insights/activityLogAlerts/Testing",
"type": "Microsoft.Insights/ActivityLogAlerts",
"name": "Testing",
"location": "Global",
"kind": null,
"tags": {},
"properties": {
    "scopes": ["/subscriptions/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"],
    "condition": {
        "allOf": [{
            "field": "Category",
            "equals": "Administrative",
            "containsAny": null
        }, {
            "field": "operationName",
            "equals": "Microsoft.Authorization/policyAssignments/write",
            "containsAny": null
        }]
    },
    "actions": {
        "actionGroups": [{
            "actionGroupId": "/subscriptions/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/resourcegroups/xxxxxxxxxxxxxxx/providers/microsoft.insights/actiongroups/TestingAlertGRP",
            "webhookProperties": ""
        }]
    },
    "enabled": true,
    "description": "Alert created for Testing"
},
"identity": null
}

"@

API

$API = "https://management.azure.com/subscriptions/$SubscriptionID/resourceGroups/$ResourceGroupName/providers/microsoft.insights/activityLogAlerts/$Name`?api-version=2017-04-01"
Invoke-RestMethod -Method Put -Uri $API -Headers @{Authorization = "Bearer $Token"} -Body $Remediate -ContentType 'application/json' | Out-Null

0 ответов

Другие вопросы по тегам