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

使用Application Insights统一监控Azure IIS多网站遇实时指标报错

解决Application Insights实时指标报错的实用方案

我之前帮客户排查过完全相同的场景——Azure IIS VM托管多站点,用无代码Agent统一监控却遇到实时指标报错,给你几个靠谱的排查方向:

  • 先确认Agent是否真的给所有站点都注入了监控
    登录到你的VM,打开PowerShell,加载Application Insights Agent的模块(路径是C:\Program Files\Microsoft Application Insights Agent\StatusMonitor2\PowerShell\Microsoft.ApplicationInsights.StatusMonitor.PowerShell.dll),然后运行Get-ApplicationInsightsMonitoringStatus命令。重点看每个站点的InstrumentationKey是不是和你的目标App Insights资源一致,还有Status列是不是显示Instrumented。要是有站点没被正确注入,就用Enable-ApplicationInsightsMonitoring -InstrumentationKey "你的资源密钥" -AppPoolName "对应站点的应用池名称"单独给这个站点的应用池做注入。

  • 检查.NET环境和Agent的兼容性
    无代码Agent对.NET版本有要求:.NET Framework站点得是4.6.1及以上;.NET Core站点要3.1+或者5.0+(不同Agent版本支持范围略有区别)。你可以在IIS里查看每个站点应用池的.NET CLR版本,同时去VM的C:\Program Files\Microsoft Application Insights Agent目录下看Agent的版本,尽量用最新版的Agent,旧版本可能对新.NET环境支持不好。

  • 实时指标的WebSocket连接要确保通畅
    实时指标依赖WebSocket和App Insights服务通信,所以得确认:

    • VM的出站防火墙允许访问*.applicationinsights.azure.com的443端口,别把WebSocket流量拦截了(Agent默认会配置,但如果有自定义防火墙规则就得检查)。
    • 站点的web.config里没禁用WebSocket,也没有代理阻止WebSocket连接。如果用了企业代理,得确保代理允许WebSocket通过。
  • 扒日志找线索
    Agent的日志在C:\Program Files\Microsoft Application Insights Agent\Logs里,看最新的StatusMonitor2_*.log和Redfield_*.log,有没有注入失败或者模块加载错误的信息。另外去Windows事件查看器的应用程序日志里,找有没有App Insights相关的报错,比如“无法加载Application Insights代理模块”这类记录。

  • 先验证单站点是否正常
    先停掉其他站点的应用池,只留一个简单的站点,访问它之后再看实时指标。如果单站点正常,那可能是多站点同时上报的限流问题?不过实时指标的限流阈值挺高的,也可以去App Insights的“使用情况和预估成本”里看看有没有超出配额的提示。

最后提醒一句:无代码Agent不会自动给所有IIS站点都注入,每个应用池都需要单独确认或者手动注入,尤其是新增站点的时候别漏了。如果是.NET Core站点,还要确保应用池设置的是“无托管代码”模式哦。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 14:52:34