Azure自动调整App Service Plan脚本命令无法识别求助
Azure PowerShell脚本命令无法识别问题求助
我在Azure中使用PowerShell脚本实现App Service Plan自动缩放时,遇到脚本内命令无法被识别为有效命令的问题,导致脚本执行异常。
我的脚本代码如下:
Connect-AzAccount -Identity # 资源组和App Service Plan名称 $resourceGroup = "rgtest" $appServicePlanName = "appserplamtest" # 定义指标查询参数 $metricParams = @{ ResourceId = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroup/providers/Microsoft.Web/serverfarms/$appServicePlanName" MetricName = "CPU Percentage" Aggregation = "Average" StartTime = (Get-Date).AddHours(-1) # 查询起始时间,例如最近1小时 EndTime = Get-Date # 查询结束时间 } # 查询指定App Service Plan的CPU指标 $cpuMetrics = Get-AzMetric @metricParams # 如果存在可用指标 if ($cpuMetrics -ne $null) { # 计算最近1小时的CPU平均使用率 $averageCPU = ($cpuMetrics.Data | Measure-Object -Property Average).Average # 可取消注释用于调试输出 #Write-Output "$resourceGroup组中$appServicePlanName的CPU平均使用率: $($averageCPU)%" # 此处添加阈值对比逻辑(例如30%)并执行对应操作 if ($averageCPU -lt 7) { # 使用Set-AzAppServicePlan调整定价层 Set-AzAppServicePlan -ResourceGroupName $resourceGroup -Name $appServicePlanName -Tier "B2" # 添加日志或通知以跟踪变更 Write-Output "已调整$resourceGroup组中$appServicePlanName的定价层。" } } else { Write-Output "未找到$resourceGroup组中$appServicePlanName的CPU指标数据。" }
我希望通过该脚本实现:当检测到目标App Service Plan最近1小时CPU平均使用率低于或达到30%时,自动将其定价层从Basic B3调整为Basic B2;后续还计划添加CPU占比升至85%时自动调回B3的逻辑,但目前需先解决脚本命令无法识别的问题,以实现成本优化需求。
恳请各位帮忙排查脚本执行异常的原因。
内容的提问来源于stack exchange,提问作者Georgie
相关产品推荐
相关产品推荐

