What is deployment troubleshooting?
When you deploy Bicep files or Azure Resource Manager templates (ARM templates), you may get an error. This documentation helps you find possible solutions for the error.
Error types
There are two types of errors you can get - validation errors and deployment errors.
Validation errors happen before the deployment is started. These errors can be determined without interacting with your current Azure environment. For example, validation makes you aware of syntax errors or missing arguments for a function before your deployment starts.
Deployment errors can only be determined by attempting the deployment and interacting with your Azure environment. For example, a virtual machine (VM) requires a network interface card (NIC). If the NIC doesn't exist when the VM is deployed, you get a deployment error.
Troubleshooting tools
To help identify syntax errors before a deployment, use the latest version of Visual Studio Code. Install the latest version of either:
To troubleshoot deployments, it's helpful to learn about a resource provider's properties or API versions.
To follow best practices for developing your templates, use either:
When you deploy, you can find the cause of errors from the Azure portal in a resource group's Deployments or Activity log. If you're using Azure PowerShell, use commands like Get-AzResourceGroupDeploymentOperation and Get-AzActivityLog. For Azure CLI, use commands like az deployment operation group and az monitor activity-log list.
Next steps
- For solutions based on the error code, see Troubleshoot common Azure deployment errors.
- For an introduction to finding the error code, see Quickstart: Troubleshoot ARM template deployments or Quickstart: Troubleshoot Bicep file deployments.