我正在尝试创建一个设置,在其中部署“容器的 Webapp”,但我想通过 Azure Monitor 进行一些检查。我的想法是部署 web 应用程序,然后设置一个检查 azure 监视器警报集是否可用的门。当可用性检查失败时,它应该回滚。
文档指出“当发布管道检测到 Application Insights 警报时,管道可以控制或回滚部署,直到警报得到解决”,但我不知道如何在 azure devops 中配置它。
我有一个 AppService 计划和一个正在运行的 Web 应用程序。我还创建了一个 Application Insights 实例,并通过“Azure App Service manage”任务启用了持续监控。我创建的警报是:
az monitor metrics alert create -n 'Availability' -g ${RG_NAME} --scopes "${APP_INSIGHTS_PROD}" \
--condition 'avg availabilityResults/availabilityPercentage < 90' \
--description "created from Azure DevOps"
作为部署后条件,我启用了 Gates,并将其配置为检查可用性警报,该警报有效。当我故意调整某些东西以使应用程序失败时,Gate 工作并最终使 Stage 失败。我还启用了自动重新部署以部署最后一次成功的部署,但这并没有做任何事情,因为实际的部署任务已成功完成......只是门失败和阶段失败。