Creare un modello per la risoluzione dei problemi

In alcuni casi, il modo migliore per risolvere i problemi del modello consiste nell'isolare e testare parti specifiche di esso. È possibile creare un modello di risoluzione dei problemi incentrato sulla risorsa che si ritiene causi l'errore.

Ad esempio, si verifica un errore quando il modello di distribuzione fa riferimento a una risorsa esistente. Invece di valutare un intero modello di distribuzione, creare un modello di risoluzione dei problemi che restituisca dati sulla risorsa. L'output consente di trovare se si passano i parametri corretti, usando le funzioni del modello correttamente e ottenendo la risorsa prevista.

Distribuire un modello di risoluzione dei problemi

Il modello arm seguente e il file Bicep ottengono informazioni da un account di archiviazione esistente. Eseguire la distribuzione con Azure PowerShell New-AzResourceGroupDeployment o l'interfaccia della riga di comando di Azure az deployment group create. Specificare il nome e il gruppo di risorse dell'account di archiviazione. L'output è un oggetto con i nomi e i valori delle proprietà dell'account di archiviazione.

{
  "$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"
    }
  }
}

In Bicep usare la existing parola chiave ed eseguire la distribuzione dal gruppo di risorse in cui è presente l'account di archiviazione. Usare scope per accedere a una risorsa in un gruppo di risorse diverso. Per altre informazioni, vedere Risorse esistenti.

param storageName string

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

output exampleOutput object = stg.properties

Metodo alternativo per la risoluzione dei problemi

Se si ritiene che gli errori di distribuzione siano causati da dipendenze non corrette, è possibile eseguire test suddividendo il modello in modelli semplificati. Creare innanzitutto un modello che distribuisce una sola risorsa (ad esempio SQL Server). Quando si è certi che la distribuzione delle risorse sia corretta, aggiungere una risorsa che dipende da essa ,ad esempio un database SQL. Quando queste due risorse sono definite correttamente, aggiungere altre risorse dipendenti , ad esempio i criteri di controllo. Tra ogni distribuzione di test, eliminare il gruppo di risorse per assicurarsi di testare adeguatamente le dipendenze.

Passaggi successivi