如何在Application Insights中获取VMSS的实例计数?

时间:2018-08-08 05:46:49

标签: azure azure-application-insights autoscaling azure-vm-scale-set azure-monitoring

我有一个具有自动缩放规则的虚拟机规模集(VMSS)。我可以获得主机的性能指标,但是没有实例数量的图形。

Metrics

像这样,在VMSS设置“缩放”->“运行历史”上有一个图形。

Scaling History

但是如何从Metrics中获取并放置在仪表板上?

2 个答案:

答案 0 :(得分:2)

默认情况下,拥有VMSS不会向Application Insights(AI)发出任何消息,除非您将应用程序/平台(例如Service Fabric)配置为使用AI。

因此,如果要做的软件运行在向AI发出信号的VMSS上,则可以编写AI analytics query来获取实例计数,如下所示:

requests
| summarize dcount(cloud_RoleInstance) by bin(timestamp, 1h) 

通常cloud_RoleInstance包含一个VM标识符,这就是我在查询中使用的标识符。它确实显示了不同数量的VM。

仅当软件在VMSS中的所有VM上运行并且所有VM每小时至少一次向AI发送数据时,此方法才能可靠运行。当然,您可以根据自己的喜好/要求调整脚本。

使用过的操作员:
dcount:计算指定字段的唯一出现次数
bin:小组比赛的结果为1小时

答案 1 :(得分:1)

谢谢彼得·邦斯,这就是我所需要的!

当我在VM上运行Docker时,我可以添加OMS代理容器并使用它的数据。

这就是我想要的。 ContainerInventory | where TimeGenerated >= ago(3h) | where Name contains "frontend" | summarize dcount(Computer) by bin(TimeGenerated, 5m)

enter image description here