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

如何通过Kusto查询获取目标机器最新TimeGenerated的应用状态?

调整查询以获取机器最新时间点的应用信息

你的原查询问题在于:summarize arg_max(TimeGenerated, *) by ComputerName_s, AppName_s 是按机器+应用分组,保留每个应用在该机器上的最后一条记录——哪怕这个应用已经在机器的最新时间点被卸载,它之前的最后一条记录依然会被保留,所以才会返回2023年12月1日的旧数据。

要获取机器最新TimeGenerated时间点的应用信息,需要先定位该机器的最新时间戳,再筛选这个时间点的所有应用记录,调整后的查询如下:

// 定义目标机器名称,方便后续修改
let target_computer = "xxxxxx";
// 获取目标机器的最新TimeGenerated时间戳
let latest_time = toscalar(
    YourTable  // 替换成你的实际表名
    | where ComputerName_s == target_computer
    | summarize max(TimeGenerated)
);
// 筛选目标机器在最新时间点的应用记录
YourTable
| where ComputerName_s == target_computer and TimeGenerated == latest_time
| project ComputerName_s, AppName_s, AppVersion_s, TimeGenerated

逻辑说明:

  • 用toscalar函数提取目标机器的最新时间戳,确保我们只关注这个时间点的上报数据
  • 直接筛选该机器在这个时间点的所有应用,已经卸载的应用不会出现在最新时间点的上报记录中,因此不会被返回
  • 如果目标机器在最新时间点有多条上报记录(比如同一时刻的多条数据),该查询会保留所有符合条件的记录,符合实际上报场景

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 00:12:09