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

KQL查询优化:获取各服务器上每个应用池的最新状态

问题分析与修正方案

你的核心问题是分组维度错误:原查询按itemType聚合,只会返回每个itemType下的单条最新记录,而非每台服务器(VmName)上每个应用池(AppName)的最新状态。

修正后的KQL查询

traces
| where message contains "AppNAme:"
| parse message with * "OUTPUT: ResourceGroupName:" ResourceGroupName "VmName:" VmName "AppNAme: " AppName "Status: " Status
| where AppName !contains "SharePoint Web Services Root" and VmName !contains "PHA02"
// 按服务器+应用池分组,取每组最新时间的记录
| summarize arg_max(timestamp, *) by VmName, AppName
| project timestamp, ResourceGroupName, VmName, AppName, Status

关键修正点

  1. 调整分组维度:将summarize的by子句从itemType改为VmName, AppName,这样会为每台服务器的每个应用池单独计算最新状态,匹配你的需求。
  2. 简化判断逻辑:去掉不必要的flag拼接,直接用timestamp作为判断最新记录的依据——日志时间最晚的那条,就是该应用池的当前最新状态,无需额外标记状态值。

如果你的环境中存在同一VmName+AppName对应不同ResourceGroupName的特殊情况,可以把ResourceGroupName也加入分组键:

| summarize arg_max(timestamp, *) by ResourceGroupName, VmName, AppName

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 07:46:02