如何使用PowerShell获取与AppService(WebJob)关联的AppServicePlan
获取WebJob关联的App Service Plan(PowerShell)
WebJob依附于App Service存在,它和宿主App Service共用同一个App Service Plan,只需先找到WebJob所属的App Service,再通过该App Service关联到对应的计划即可。
具体步骤与代码示例
- 先获取目标App Service的详细信息,从中提取
ServerFarmId(这是App Service Plan的资源ID) - 通过资源ID直接查询对应的App Service Plan,或解析ID中的资源组和名称来查询
方法一:解析资源ID查询
# 替换为WebJob所属的资源组名称和App Service名称 $resourceGroupName = "你的资源组名称" $webAppName = "你的App Service名称" # 获取App Service信息 $webApp = Get-AzWebApp -ResourceGroupName $resourceGroupName -Name $webAppName # 从ServerFarmId中拆分出App Service Plan的资源组和名称 $idSegments = $webApp.ServerFarmId.Split('/') $aspResourceGroup = $idSegments[4] $aspName = $idSegments[-1] # 获取关联的App Service Plan $appServicePlan = Get-AzAppServicePlan -ResourceGroupName $aspResourceGroup -Name $aspName # 输出计划信息 $appServicePlan
方法二:通过资源ID直接获取
# 替换为WebJob所属的资源组名称和App Service名称 $resourceGroupName = "你的资源组名称" $webAppName = "你的App Service名称" $webApp = Get-AzWebApp -ResourceGroupName $resourceGroupName -Name $webAppName # 直接通过ServerFarmId获取对应资源 $appServicePlan = Get-AzResource -ResourceId $webApp.ServerFarmId # 输出计划信息 $appServicePlan
补充:从WebJob资源对象获取关联信息
如果你的$azResource是WebJob的资源对象,可先从其属性提取所属App Service的信息:
# 假设$azResource是WebJob资源对象 $webAppName = $azResource.Properties.parentResource.Split('/')[-1] $resourceGroupName = $azResource.ResourceGroupName # 后续步骤同上述方法
内容的提问来源于stack exchange,提问作者Vinny
相关产品推荐
相关产品推荐

