You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何通过Application Insights查询Azure平台(基础设施升级)事件发生时间?

用Application Insights查询Azure Web App基础设施升级事件的方法

绝对可以借助Application Insights(或是关联的Log Analytics工作区)来追踪这类「Platform (Infrastructure Upgrade)」事件的发生时间!我之前帮团队解决过类似的需求,下面是具体的实现步骤和查询语句:

核心查询语句(Kusto语言)

这类平台级别的基础设施升级事件,本质上会触发Web App的重启操作,相关记录会被Azure写入AzureActivity日志表中。你可以在Application Insights的「日志」查询界面(或是Log Analytics工作区)运行以下查询:

AzureActivity
| where OperationNameValue == "Microsoft.Web/sites/restart/action"
| where ActivityStatusValue == "Success"
| where ResourceGroup == "<你的资源组名称>"
| where Resource == "<你的Web App名称>"
| where SubStatusValue contains "InfrastructureUpgrade"
| project EventTimestamp, OperationName, Resource, SubStatusValue, ActivityLogId
| sort by EventTimestamp desc

查询语句说明

  • AzureActivity:存储所有Azure资源平台操作事件的核心表,包含了重启、升级等各类系统操作记录
  • OperationNameValue:筛选出Web App的重启操作,因为基础设施升级必然会触发Web App重启
  • SubStatusValue:这个字段会明确标记出重启的原因,包含InfrastructureUpgrade的记录就是你要找的平台升级事件
  • project:只保留你关心的关键字段,比如事件发生时间戳、操作名称、资源名等,最后按时间倒序排列,方便查看最新的事件

额外提示

如果你的Application Insights还没有关联到Log Analytics工作区,需要先完成关联操作,这样才能在Application Insights的查询界面中访问到AzureActivity表。关联完成后,上面的查询就能直接运行了。

另外,你还可以基于这个查询创建警报规则,这样每次发生基础设施升级事件时,就能自动收到通知,不用再手动去门户排查了。

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

火山引擎 最新活动