You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure应用服务计划CPU使用率脚本返回Null,需获取最大CPU百分比指标

解决Azure应用服务计划CPU使用率最大值脚本查询返回Null的问题

PowerShell 解决方案

使用Get-AzMetric命令时,需确保参数匹配门户使用的指标维度、时间范围和聚合方式,以下是可行的脚本示例:

# 替换为你的资源组名称和应用服务计划名称
$resourceGroupName = "your-resource-group"
$appServicePlanName = "your-app-service-plan"

# 查询过去24小时内的CPU使用率最大值
Get-AzMetric -ResourceGroupName $resourceGroupName `
    -ResourceName $appServicePlanName `
    -ResourceType "Microsoft.Web/serverfarms" `
    -MetricName "CpuPercentage" `
    -AggregationType "Maximum" `
    -StartTime (Get-Date).AddHours(-24) `
    -EndTime (Get-Date)

PowerShell 注意事项

  • 确认ResourceType为Microsoft.Web/serverfarms,这是应用服务计划的正确资源类型
  • 时间范围需与Azure门户中查看的范围一致,若门户看的是过去1小时,就把AddHours(-24)改成AddHours(-1)
  • 如果计划包含多个实例,可添加-Dimension "InstanceId"查看每个实例的最大值,或保持默认聚合整个计划的最大值

Bash 解决方案

使用Azure CLI的az monitor metrics query命令,参数配置需对齐门户的指标设置,示例脚本如下:

# 替换为你的资源组名称和应用服务计划名称
RESOURCE_GROUP="your-resource-group"
ASP_NAME="your-app-service-plan"

# 查询过去24小时的CPU使用率最大值
az monitor metrics query \
    --resource-group $RESOURCE_GROUP \
    --resource $ASP_NAME \
    --resource-type "Microsoft.Web/serverfarms" \
    --metric "CpuPercentage" \
    --aggregation "Maximum" \
    --start-time 24h ago \
    --end-time now

Bash 注意事项

  • 若脚本返回空,可添加--verbose参数查看详细请求日志,确认是否存在权限或参数错误
  • 部分地区的Azure环境可能需要指定--location参数,确保与应用服务计划的区域一致

通用排查要点

  • 指标名称验证:Azure应用服务计划的CPU使用率指标固定为CpuPercentage,不要误写为CPUUsage或其他名称
  • 聚合方式匹配:门户中显示的"最大值"对应脚本中的Maximum聚合类型,不要用Average或Total
  • 时间范围对齐:如果脚本查询的时间窗口内没有数据(比如计划刚创建),也会返回Null,需调整时间范围到有数据的时段
  • 权限检查:执行脚本的账号需拥有Monitoring Reader或更高权限,确保能读取指标数据

内容的提问来源于stack exchange,提问作者sri nath

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 12:42:38