Quando uma implementação de recursos do Azure falha ao utilizar modelos de Resource Manager do Azure (modelos do ARM) ou ficheiros Bicep, é recebido um código de erro. Este artigo descreve como localizar códigos de erro para que possa resolver o problema. Para obter mais informações sobre códigos de erro, veja Erros de implementação comuns.
Tipos de erro
Existem três tipos de erros relacionados com uma implementação:
Os erros de validação ocorrem antes do início de uma implementação e são causados por erros de sintaxe no ficheiro. Um editor de código como o Visual Studio Code pode identificar estes erros.
Os erros de validação de pré-voo ocorrem quando um comando de implementação é executado, mas os recursos não são implementados. Estes erros são encontrados antes de começar a implementação. Por exemplo, se o valor de um parâmetro estiver incorreto, o erro é encontrado na validação de verificação prévia.
Os erros de implementação ocorrem durante o processo de implementação e só podem ser encontrados ao avaliar o progresso da implementação no seu ambiente do Azure.
Todos os tipos de erros devolvem um código de erro que deve utilizar para resolver os problemas da implementação. Os erros de validação e verificação prévia são apresentados no registo de atividades, mas não aparecem no seu histórico de implementações. Um ficheiro Bicep com erros de sintaxe não é compilado em JSON e não é apresentado no registo de atividades.
Os modelos são validados durante o processo de implementação e os códigos de erro são apresentados. Antes de executar uma implementação, pode identificar erros de validação e de pré-voo ao executar testes de validação com Azure PowerShell ou a CLI do Azure.
Um modelo do ARM pode ser implementado a partir do portal. Se o modelo tiver erros de sintaxe, verá um erro de validação quando tentar executar a implementação. Para obter mais informações sobre implementações de portal, veja Implementar recursos a partir de um modelo personalizado.
O exemplo seguinte tenta implementar uma conta de armazenamento e ocorre um erro de validação.
Selecione a mensagem para obter mais detalhes. O modelo tem um erro de sintaxe com o código InvalidTemplatede erro . O Resumo mostra que falta um parêntese de fecho de uma expressão.
O resultado apresenta códigos de erro como InvalidTemplateDeployment ou AccountNameInvalid que pode utilizar para resolver problemas e corrigir o modelo.
Para um ficheiro Bicep, o resultado de um problema de validação de sintaxe mostra um erro de parâmetro.
Test-AzResourceGroupDeployment: Cannot retrieve the dynamic parameters for the cmdlet.
Cannot find path '/tmp/11111111-1111-1111-1111-111111111111/main.json' because it does not exist.
Para obter mais informações de resolução de problemas, utilize o comando De compilação do Bicep. O resultado mostra o número de linha e coluna de cada erro em parênteses e a mensagem de erro.
bicep build main.bicep
/azuredeploy.bicep(22,51) : Error BCP064: Found unexpected tokens in interpolated expression.
/azuredeploy.bicep(22,51) : Error BCP004: The string at this location is not terminated due to an
unexpected new line character.
Outros âmbitos
Existem Azure PowerShell cmdlets para validar modelos de implementação para os âmbitos de subscrição, grupo de gestão e inquilino.
az deployment group validate \
--resource-group examplegroup \
--template-file azuredeploy.json
O resultado apresenta códigos de erro como InvalidTemplateDeployment ou AccountNameInvalid que pode utilizar para resolver problemas e corrigir o modelo.
Para um ficheiro Bicep, o resultado mostra o número de linha e coluna de cada erro em parênteses e a mensagem de erro.
az deployment group validate \
--resource-group examplegroup \
--template-file main.bicep
/azuredeploy.bicep(22,51) : Error BCP064: Found unexpected tokens in interpolated expression.
/azuredeploy.bicep(22,51) : Error BCP004: The string at this location is not terminated due to an
unexpected new line character.
Outros âmbitos
Existem comandos da CLI do Azure para validar modelos de implementação para a subscrição, grupo de gestão e âmbitos de inquilinos.
São processadas várias operações para implementar um recurso do Azure. Os erros de implementação ocorrem quando uma operação passa na validação, mas falha durante a implementação. Pode ver mensagens sobre cada operação de implementação e cada implementação de um grupo de recursos.