Delen via


Quickstart: Advisor-waarschuwingen maken voor nieuwe aanbevelingen met behulp van een ARM-sjabloon

In dit artikel leest u hoe u een waarschuwing instelt voor nieuwe aanbevelingen van Azure Advisor met behulp van een Azure Resource Manager-sjabloon (ARM-sjabloon).

Een Azure Resource Manager-sjabloon is een JSON-bestand (JavaScript Object Notation) dat de infrastructuur en configuratie voor uw project definieert. Voor de sjabloon is declaratieve syntaxis vereist. U beschrijft de beoogde implementatie zonder de reeks programmeeropdrachten te schrijven om de implementatie te maken.

Wanneer Advisor een nieuwe aanbeveling voor een van uw resources detecteert, wordt een gebeurtenis opgeslagen in een Azure-activiteitenlogboek. U kunt waarschuwingen voor deze gebeurtenissen van Advisor instellen met behulp van een aanbevelingsspecifieke ervaring voor het maken van waarschuwingen. U kunt een abonnement en optioneel een resourcegroep selecteren om de resources op te geven waarvoor u waarschuwingen wilt ontvangen.

U kunt ook de typen aanbevelingen vaststellen met behulp van de volgende eigenschappen:

  • Categorie
  • Impactniveau
  • Aanbevelingstype

U kunt ook de actie configureren die plaatsvindt wanneer een waarschuwing wordt geactiveerd door:

  • Een bestaande actiegroep selecteren.
  • Een nieuwe actiegroep maken.

Raadpleeg Actiegroepen maken en beheren voor meer informatie over actiegroepen.

Notitie

Advisor-waarschuwingen zijn momenteel alleen beschikbaar voor aanbevelingen voor hoge beschikbaarheid, prestaties en kosten. Aanbevelingen voor beveiliging worden niet ondersteund.

Vereisten

De sjabloon controleren

Met de volgende sjabloon maakt u een actiegroep met een e-maildoel en schakelt u alle servicestatusmeldingen voor het doelabonnement in. Sla deze sjabloon op als 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'))]"
      ]
    }
  ]
}

In de sjabloon zijn twee resources gedefinieerd:

De sjabloon implementeren

Implementeer de sjabloon met behulp van een standaardmethode voor het implementeren van een ARM-sjabloon, zoals de volgende voorbeelden die gebruikmaken van de CLI en PowerShell. Vervang de voorbeeldwaarden voor ResourceGroupen emailAddress door de juiste waarden voor uw omgeving. De naam van de werkruimte moet uniek zijn voor alle Azure-abonnementen.

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

De implementatie valideren

Controleer of de werkruimte is gemaakt met behulp van een van de volgende opdrachten. Vervang de voorbeeldwaarden voor de resourcegroep door de waarde die u in het vorige voorbeeld hebt gebruikt.

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

Resources opschonen

Als u van plan bent om verder te gaan met volgende snelstarts en zelfstudies, kunt u deze resources het beste intact laten. Wanneer u de resources niet meer nodig hebt, verwijdert u de resourcegroep, waarmee de waarschuwingsregel en de gerelateerde resources worden verwijderd. De resourcegroep verwijderen met behulp van de CLI of PowerShell:

az group delete --name my-resource-group