如何在仪表板上按维度拆分展示Application Insights指标?
按维度拆分展示Application Insights指标的解决方法
方法一:改用日志查询构建图表
直接通过指标面板选择的预聚合指标常存在拆分限制,改用日志查询可灵活实现维度拆分:
- 在Azure仪表板添加图表时,选择**「Log (Analytics)」**类型,而非默认的指标图表。
- 编写Kusto查询提取带维度的指标数据,以GC代维度为例,查询示例如下:
customMetrics | where name == "你的指标名称" | summarize avg(value) by bin(timestamp, 5m), customDimensions["GCGeneration"] | render timechart
- 根据实际数据调整聚合方式(avg/sum/count等)、时间间隔和维度键名,保存查询后即可在仪表板看到按不同维度拆分的曲线。
方法二:检查指标面板的配置细节
若坚持使用指标面板,可尝试以下操作:
- 确认所选指标为多维度指标:部分自定义指标若未正确标记为多维度,或Portal未加载出维度信息,会导致拆分按钮禁用。
- 重新选择指标:在指标选择器中,确保选中的是包含自定义维度的原始指标,而非自动聚合后的总和指标。
- 切换聚合方式:尝试将聚合方式从Sum改为Avg或Count,部分聚合类型可能支持维度拆分(此方法优先级低于日志查询法)。
方法三:验证自定义维度的发送格式
检查应用发送指标的代码,确保自定义维度作为属性正确附加,以.NET为例:
// 方式1:通过TrackMetric发送 var dimensions = new Dictionary<string, string> { { "GCGeneration", "gen0" } }; telemetryClient.TrackMetric("你的指标名称", 1.0, dimensions); // 方式2:通过TrackEvent附带指标 var metrics = new Dictionary<string, double> { { "你的指标名称", 1.0 } }; telemetryClient.TrackEvent("MetricEvent", dimensions, metrics);
确保维度键名无拼写错误,保证日志能正确识别并提取维度数据。
内容的提问来源于stack exchange,提问作者Volodymyr V.
相关产品推荐
相关产品推荐

