Dela via


Skapa en felsökningsmall

I vissa fall är det bästa sättet att felsöka mallen att isolera och testa specifika delar av den. Du kan skapa en felsökningsmall som fokuserar på den resurs som du tror orsakar felet.

Ett fel uppstår till exempel när distributionsmallen refererar till en befintlig resurs. I stället för att utvärdera en hel distributionsmall skapar du en felsökningsmall som returnerar data om resursen. Utdata hjälper dig att ta reda på om du skickar in rätt parametrar, använder mallfunktionerna korrekt och hämtar den resurs du förväntar dig.

Distribuera en felsökningsmall

Följande ARM-mall och Bicep-fil hämtar information från ett befintligt lagringskonto. Du kör distributionen med Azure PowerShell New-AzResourceGroupDeployment eller Azure CLI az deployment group create. Ange lagringskontots namn och resursgrupp. Utdata är ett objekt med lagringskontots egenskapsnamn och värden.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storageName": {
      "type": "string"
    },
    "storageResourceGroup": {
      "type": "string"
    }
  },
  "variables": {},
  "resources": [],
  "outputs": {
    "exampleOutput": {
      "value": "[reference(resourceId(parameters('storageResourceGroup'), 'Microsoft.Storage/storageAccounts', parameters('storageName')), '2022-05-01')]",
      "type": "object"
    }
  }
}

I Bicep använder du nyckelordet existing och kör distributionen från resursgruppen där lagringskontot finns. Använd scope för att komma åt en resurs i en annan resursgrupp. Mer information finns i befintliga resurser.

param storageName string

resource stg 'Microsoft.Storage/storageAccounts@2022-05-01' existing = {
  name: storageName
}

output exampleOutput object = stg.properties

Alternativ felsökningsmetod

Om du tror att distributionsfelen orsakas av felaktiga beroenden kan du köra tester genom att dela upp mallen i förenklade mallar. Skapa först en mall som bara distribuerar en enskild resurs (till exempel en SQL Server). När du är säker på att resursdistributionen är korrekt lägger du till en resurs som är beroende av den (till exempel en SQL Database). När dessa två resurser har definierats korrekt lägger du till andra beroende resurser (till exempel granskningsprinciper). Mellan varje testdistribution tar du bort resursgruppen för att kontrollera att du testar beroendena på ett tillfredsställande sätt.

Nästa steg