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

Azure App Service托管ASP.NET应用的超时洞察实现方案咨询

Azure App Service ASP.NET(非Core)超时监控与Power BI报表落地方案

一、无服务器权限的Application Insights接入可行性

完全可以实现,不需要IIS服务器访问权限,也不需要仅通过Web App URL做主动探测采集(该方式数据不全、误差大)。Azure App Service提供了Application Insights无代码自动注入能力,全程操作都可以在Azure门户完成,无需登录服务器、无需修改应用代码即可完成监控接入。

二、具体落地步骤

1. 启用Application Insights无代码监控

  • 登录Azure门户,找到目标ASP.NET Web App对应的App Service资源
  • 在左侧导航栏选择「设置 > 应用程序见解」,点击「启用」按钮,选择关联现有Application Insights资源或新建资源
  • 保存配置后等待5-10分钟,App Service会自动为托管的ASP.NET应用注入监控探针,自动采集所有请求的时间戳、URL、响应时长、状态码等核心数据

注:该方式要求ASP.NET应用运行的.NET Framework版本不低于4.5,符合主流Azure App Service的运行环境要求

2. 自定义维度统计规则

默认采集的请求数据已经覆盖你需要的所有统计维度,可通过KQL查询自定义拆分统计逻辑:

requests
// 调整时间范围
| where timestamp >= ago(30d)
// 过滤API请求,可根据业务实际调整规则
| where operation_Name has_any("GET ", "POST ", "PUT ", "DELETE ")
// 提取API端点路径
| extend api_endpoint = tostring(split(operation_Name, ' ')[1])
// 区分默认端点和带过滤器的端点,可根据你的业务URL规则调整判断条件
| extend endpoint_type = iif(
    api_endpoint contains "?filter=" or api_endpoint has "/filter/",
    "带过滤器端点",
    "默认端点"
)
// 生成需要的时间维度
| extend 统计日期 = format_datetime(timestamp, 'yyyy-MM-dd')
| extend 统计小时 = datetime_part('Hour', timestamp)
// 自定义超时阈值,示例为30000毫秒即30秒,可自行调整
| extend 是否超时 = iif(duration > 30000, "超时", "正常")

以上查询可直接在Application Insights的「日志」面板运行验证,确认统计逻辑符合预期后即可对接Power BI。

3. 对接Power BI生成可视化报表

  • 打开Power BI Desktop,选择「获取数据 > Azure > Application Insights」
  • 填入Application Insights资源的应用ID、只读API密钥(密钥可在Application Insights的「配置 > API访问」面板生成,仅授予查询权限即可)
  • 把上一步验证通过的KQL查询作为导入语句,将数据导入Power BI
  • 按照业务需求制作可视化组件:可实现按日期/小时的超时趋势图、不同端点类型的超时占比、TOP N超时API排行等报表内容,也可配置自动刷新规则定时同步最新监控数据

注:如果需要补充自定义请求属性,也可以在应用代码里少量添加Application Insights SDK的埋点代码,不需要服务器权限,重新发布应用即可生效

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 10:18:03