如何在App Insights工作簿的Kusto查询中实现双重group by
App Insights 双重分组指标查询实现方案
结论
该需求完全可以实现,Azure Monitor Kusto查询原生支持多维度分组聚合,同时按cloud_RoleInstance和指标名称分组后,可直接适配App Insights工作簿的可视化配置。
参考实现代码
你可以直接在已有查询的summarize子句中同时声明两个分组维度,示例如下:
customMetrics | where name in ('Heap Memory Usage - used', 'Heap Memory Usage - committed','Heap Memory Usage - max') | where cloud_RoleName == "{cloud_rolename}" | project timestamp, name, cloud_RoleInstance, valueSum, valueCount // 同时按5分钟时间粒度、指标名称、实例ID三个维度聚合,包含你需要的双重分组规则 | summarize ['平均指标值'] = sum(valueSum) / sum(valueCount) by bin(timestamp, 5m), name, cloud_RoleInstance // 可选:合并维度生成可视化用的系列名称 // | extend 系列名 = strcat(cloud_RoleInstance, " | ", name)
可视化配置建议
- 如果需要所有指标和实例曲线展示在同一面板:在折线图的「拆分依据」配置中同时选择
name和cloud_RoleInstance两个维度,系统会自动为不同实例+指标的组合分配不同样式的曲线,Pod重启后新实例的曲线会自动用新颜色区分。 - 如果需要每个指标单独占用一个子面板:在工作簿的分组设置中开启「按列拆分」,拆分依据选择
name,每个子面板内再单独按cloud_RoleInstance拆分曲线颜色即可。
内容的提问来源于stack exchange,提问作者Allen Harris
相关产品推荐
相关产品推荐

