Criar um modelo de solução de problemas

Em alguns casos, a melhor maneira de solucionar problemas do seu modelo é isolar e testar partes específicas dele. Você pode criar um modelo de solução de problemas que se concentre no recurso que você acredita estar causando o erro.

Por exemplo, um erro ocorre quando seu modelo de implantação faz referência a um recurso existente. Em vez de avaliar um modelo de implantação inteiro, crie um modelo de solução de problemas que retorna dados sobre o recurso. A saída ajuda você a descobrir se está transmitindo os parâmetros certos, usando funções de modelo corretamente e obtendo os recursos esperados.

Implantar um modelo de solução de problemas

O modelo ARM e o arquivo Bicep a seguir obtêm informações de uma conta de armazenamento existente. Você executa a implantação com Azure PowerShell New-AzResourceGroupDeployment ou CLI do Azure az deployment group create. Especifique o nome da conta de armazenamento e o grupo de recursos. A saída é um objeto com os nomes de propriedade e os valores da conta de armazenamento.

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

No Bicep, use a palavra-chave existing e execute a implantação a partir do grupo de recursos em que a conta de armazenamento existe. Use scope para acessar um recurso em um grupo de recursos diferente. Para obter mais informações, confira recursos existentes.

param storageName string

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

output exampleOutput object = stg.properties

Método alternativo de solução de problemas

Se você acreditar que os erros de implantação são causados por dependências incorretas, poderá executar testes dividindo o modelo em modelos simplificados. Primeiro, crie um modelo que implanta um único recurso (como um SQL Server). Quando tiver certeza de que a implantação de recursos está correta, adicione um recurso que dependa dele (como um Banco de Dados SQL). Quando esses dois recursos estiverem definidos corretamente, adicione outros recursos dependentes (como políticas de auditoria). Entre cada implantação de teste, exclua o grupo de recursos para garantir que você esteja testando adequadamente as dependências.

Próximas etapas