Sdílet prostřednictvím


Rychlý start: Vytvoření upozornění Advisoru na nová doporučení pomocí šablony ARM

V tomto článku se dozvíte, jak nastavit upozornění na nová doporučení z Azure Advisoru pomocí šablony Azure Resource Manageru (šablona ARM).

Šablona Azure Resource Manageru je soubor JSON (JavaScript Object Notation), který definuje infrastrukturu a konfiguraci projektu. Tato šablona používá deklarativní syntaxi. Popíšete zamýšlené nasazení, aniž byste museli psát posloupnost programovacích příkazů pro vytvoření nasazení.

Kdykoli Advisor zjistí nové doporučení pro jeden z vašich prostředků, událost se uloží do protokolu aktivit Azure. Upozornění na tyto události můžete nastavit z Advisoru pomocí prostředí pro vytváření upozornění specifických pro doporučení. Můžete vybrat předplatné a volitelně skupinu prostředků a určit prostředky, na které chcete dostávat upozornění.

Typy doporučení můžete také určit pomocí těchto vlastností:

  • Kategorie
  • Úroveň dopadu
  • Typ doporučení

Můžete také nakonfigurovat akci, která se provede při aktivaci výstrahy:

  • Výběr existující skupiny akcí
  • Vytvoření nové skupiny akcí

Další informace o skupinách akcí najdete v tématu Vytváření a správa skupin akcí.

Poznámka:

Výstrahy Advisoru jsou aktuálně dostupné jenom pro doporučení k vysoké dostupnosti, výkonu a nákladům. Doporučení zabezpečení nejsou podporovaná.

Požadavky

Kontrola šablony

Následující šablona vytvoří skupinu akcí s cílem e-mailu a povolí všechna oznámení o stavu služby pro cílové předplatné. Uložte tuto šablonu jako CreateAdvisorAlert.json.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "actionGroups_name": {
      "defaultValue": "advisorAlert",
      "type": "string"
    },
    "activityLogAlerts_name": {
      "defaultValue": "AdvisorAlertsTest",
      "type": "string"
    },
    "emailAddress": {
      "defaultValue": "<email address>",
      "type": "string"
    }
  },
  "variables": {
    "alertScope": "[concat('/','subscriptions','/',subscription().subscriptionId)]"
  },
  "resources": [
    {
      "comments": "Action Group",
      "type": "microsoft.insights/actionGroups",
      "apiVersion": "2019-06-01",
      "name": "[parameters('actionGroups_name')]",
      "location": "Global",
      "scale": null,
      "dependsOn": [],
      "tags": {},
      "properties": {
        "groupShortName": "[parameters('actionGroups_name')]",
        "enabled": true,
        "emailReceivers": [
          {
            "name": "[parameters('actionGroups_name')]",
            "emailAddress": "[parameters('emailAddress')]"
          }
        ],
        "smsReceivers": [],
        "webhookReceivers": []
      }
    },
    {
      "comments": "Azure Advisor Activity Log Alert",
      "type": "microsoft.insights/activityLogAlerts",
      "apiVersion": "2017-04-01",
      "name": "[parameters('activityLogAlerts_name')]",
      "location": "Global",
      "scale": null,
      "tags": {},
      "properties": {
        "scopes": [
          "[variables('alertScope')]"
        ],
        "condition": {
          "allOf": [
            {
              "field": "category",
              "equals": "Recommendation"
            },
            {
              "field": "properties.recommendationCategory",
              "equals": "Cost"
            },
            {
              "field": "properties.recommendationImpact",
              "equals": "Medium"
            },
            {
              "field": "operationName",
              "equals": "Microsoft.Advisor/recommendations/available/action"
            }
          ]
        },
        "actions": {
          "actionGroups": [
            {
              "actionGroupId": "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]",
              "webhookProperties": {}
            }
          ]
        },
        "enabled": true,
        "description": ""
      },
      "dependsOn": [
        "[resourceId('microsoft.insights/actionGroups', parameters('actionGroups_name'))]"
      ]
    }
  ]
}

Šablona definuje dva prostředky:

Nasazení šablony

Nasaďte šablonu pomocí libovolné standardní metody pro nasazení šablony ARM, jako jsou například následující příklady, které používají rozhraní příkazového řádku a PowerShell. Nahraďte ukázkové hodnoty pro ResourceGroupa emailAddress nahraďte odpovídajícími hodnotami pro vaše prostředí. Název pracovního prostoru musí být jedinečný mezi všemi předplatnými Azure.

az login
az deployment group create --name CreateAdvisorAlert --resource-group my-resource-group --template-file CreateAdvisorAlert.json --parameters emailAddress='user@contoso.com'

Ověření nasazení

Pomocí jednoho z následujících příkazů ověřte, že byl pracovní prostor vytvořen. Nahraďte ukázkové hodnoty pro skupinu prostředků hodnotou, kterou jste použili v předchozím příkladu.

az monitor activity-log alert show --resource-group my-resource-group --name AdvisorAlertsTest

Vyčištění prostředků

Pokud chcete pokračovat v práci s dalšími rychlými starty a kurzy, můžete tyto prostředky ponechat na místě. Pokud už prostředky nepotřebujete, odstraňte skupinu prostředků, která odstraní pravidlo upozornění a související prostředky. Odstranění skupiny prostředků pomocí rozhraní příkazového řádku nebo PowerShellu:

az group delete --name my-resource-group