如何在Azure Data Explorer中按用户/主体监控时段内CPU和内存绝对用量
解决方案:按用户/主体统计特定时段CPU与内存绝对使用量
一、Kusto查询实现方案
1. 统计用户CPU总消耗
利用.show queries命令提取查询执行日志,按用户分组汇总CPU绝对使用量:
.show queries | where Timestamp between (datetime(2024-01-01 00:00:00) .. datetime(2024-01-01 23:59:59)) // 替换为目标时段 | where UserPrincipalName != "" | summarize 总CPU耗时(毫秒) = sum(CPUTimeMs) by UserPrincipalName // 按用户主体分组 | sort by 总CPU耗时(毫秒) desc
2. 统计用户内存总消耗
若集群已采集节点级性能数据,可通过关联用户查询与内存指标实现统计(需确保存在对应性能表):
// 示例:假设存在NodePerformance表,记录用户关联的内存使用数据 NodePerformance | where Timestamp between (datetime(2024-01-01 00:00:00) .. datetime(2024-01-01 23:59:59)) | where User != "" | summarize 总内存使用(字节) = sum(MemoryUsageBytes), 平均内存使用(字节) = avg(MemoryUsageBytes) by User | sort by 总内存使用(字节) desc
二、补充方案
- 若已启用Insights高级分析,可将上述Kusto查询保存为自定义仪表板,实现特定时段用户资源使用情况的可视化展示。
- 检查官方文档中
.show queries的字段配置,确保环境已开启CPU、内存相关日志采集,部分字段需提前启用才能返回有效数据。
内容的提问来源于stack exchange,提问作者FakieKickflip
相关产品推荐
相关产品推荐

