Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Pokud chcete vyřešit chybu nasazení, můžete povolit protokolování ladění, abyste získali další informace. Protokolování ladění funguje pro nasazení pomocí souborů Bicep nebo šablon Azure Resource Manageru (šablon ARM). Můžete získat data o požadavku a odpovědi nasazení, abyste se dozvěděli o příčině problému.
Výstraha
Protokolování ladění může odhalit tajné informace, jako jsou hesla nebo listKeys operace. Protokolování ladění povolte jenom v případě, že potřebujete vyřešit chybu nasazení. Po dokončení ladění byste měli odebrat historii nasazení ladění.
Nastavení protokolování ladění
Pomocí Azure PowerShell povolte protokolování ladění, které vyplní vlastnosti request a response informacemi o nasazení pro účely řešení potíží. Protokolování ladění nejde povolit pomocí Azure CLI.
Záznamy ladění jsou povoleny pouze pro hlavní šablonu ARM nebo soubor Bicep. Pokud používáte vnořené šablony ARM nebo moduly Bicep, přečtěte si téma Ladění vnořené šablony.
Pro nasazení skupiny prostředků použijte New-AzResourceGroupDeployment a nastavte DeploymentDebugLogLevel parametr na All, ResponseContentnebo RequestContent.
Když je povoleno protokolování ladění, zobrazí se upozornění, že citlivé údaje, jako jsou hesla nebo listKeys operace, mohou být zaznamenávány a zobrazovány při použití příkazů, jako Get-AzResourceGroupDeploymentOperation při získání informací o nasazení.
New-AzResourceGroupDeployment `
-Name exampledeployment `
-ResourceGroupName examplegroup `
-TemplateFile main.bicep `
-DeploymentDebugLogLevel All
Výstup nasazení zobrazuje úroveň protokolování ladění.
DeploymentDebugLogLevel : RequestContent, ResponseContent
Parametr DeploymentDebugLogLevel je k dispozici pro jiné obory nasazení: předplatné, skupina pro správu a tenant.
Získat informace o ladění
Po povolení protokolování ladění můžete získat další informace o operacích nasazení. Rutiny Azure PowerShell pro operace nasazení nevypíší vlastnosti request a response. K získání informací z těchto vlastností musíte použít Azure CLI.
Pokud protokolování ladění nepovolíte z příkazu nasazení, můžete stále získat informace o operacích nasazení. Pomocí Azure PowerShellu nebo Azure CLI získejte stavový kód, stavovou zprávu a stav zřizování.
Pro nasazení skupiny prostředků použijte Get-AzResourceGroupDeploymentOperation k získání operací nasazení.
Get-AzResourceGroupDeploymentOperation `
-DeploymentName exampledeployment `
-ResourceGroupName examplegroup
Můžete zadat vlastnost, například StatusCode, StatusMessagenebo ProvisioningState filtrovat výstup.
(Get-AzResourceGroupDeploymentOperation `
-DeploymentName exampledeployment `
-ResourceGroupName examplegroup).StatusCode
Další informace najdete v dokumentaci k rozsahům operací nasazení: předplatné, skupina pro správu a nájemce.
Ladit vnořenou šablonu
Hlavní šablona ARM a vnořené šablony mají vlastní název nasazení a historii nasazení. Hlavní soubor a modul Bicep také používají samostatný název nasazení a historii nasazení.
Šablona ARM
Pokud chcete protokolovat informace o ladění pro vnořenou šablonu ARM, použijte vlastnost Microsoft.Resources/deploymentsdebugSetting.
Následující ukázka ukazuje vnořenou šablonu s debugSetting k zaznamenání požadavku a odpovědi nasazení.
"resources": [
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2021-04-01",
"name": "nestedTemplateDebug",
"properties": {
"mode": "Incremental",
"template": {
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2022-05-01",
"name": "[variables('storageAccountName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('storageAccountType')]"
},
"kind": "StorageV2"
}
]
},
"debugSetting": {
"detailLevel": "requestContent, responseContent"
}
}
}
],
Hlavní šablona ARM a vnořené šablony mají vlastní název nasazení a historii nasazení. Pokud chcete, aby vlastnosti request a response obsahovaly informace o řešení potíží, vezměte v úvahu následující scénáře nasazení:
- Vlastnosti
requestaresponseobsahujínullhodnoty pro hlavní šablonu a vnořenou šablonu, pokudDeploymentDebugLogLevelnení povolen příkazem nasazení. - Když příkaz nasazení povolí
DeploymentDebugLogLevel, vlastnostirequestaresponseobsahují informace pouze pro hlavní šablonu. Vlastnosti vnořené šablony obsahujínullhodnoty. - Pokud vnořená šablona použije
debugSettinga příkaz nasazení neobsahujeDeploymentDebugLogLevel, pak má pouze vnořené nasazení šablony hodnoty pro vlastnostirequestaresponse. Vlastnosti hlavní šablony obsahujínullhodnoty. - Chcete-li získat
requestaresponsepro hlavní šablonu a vnořenou šablonu, zadejteDeploymentDebugLogLevelv příkazu nasazení a použijtedebugSettingve vnořené šabloně.
Soubor Bicep
Doporučení pro soubory Bicep je používat moduly místo vnořených šablon s Microsoft.Resources/deployments. Stavová zpráva, stavový kód a stav zřizování budou obsahovat informace o hlavním souboru a modulu Bicep, které můžete použít k řešení potíží s nasazením.
Pokud umožníte DeploymentDebugLogLevel v příkazu nasazení, vlastnosti request a response budou obsahovat informace pouze o nasazení hlavního souboru Bicep.
Odstranit historii nasazení ladění
Po dokončení ladění byste měli odebrat historii nasazení, abyste zabránili všem uživatelům, kteří mají přístup, aby viděli citlivé informace, které mohly být zaprotokolovány. Pro každý název nasazení, který jste použili při ladění, spusťte příkaz pro odebrání historie nasazení.
Pokud chcete odebrat historii nasazení pro skupinu prostředků, použijte Remove-AzResourceGroupDeployment.
Remove-AzResourceGroupDeployment -ResourceGroupName examplegroup -Name exampledeployment
Příkaz se vrátí True , jakmile bude úspěšný.
Další informace o historii nasazení najdete v dokumentaci k oborům nasazení: předplatné, skupina pro správu a tenant.