0

我有一个托管在 Azure 中多个区域的应用程序。最近客户抱怨性能缓慢。我们怀疑问题出在 Azure 区域之一,我正在尝试查看来自 AppInsight 的分析,我可以看到请求列 cloud_RoleInstance。有没有办法从这个列或任何其他默认列派生区域?

4

2 回答 2

1

您可以在 Analytics 中使用client_CountryOrRegionclient_City列。例如,运行以下查询将获得每个区域的请求数量:

requests
| project client_CountryOrRegion, client_City 
| summarize count() by client_CountryOrRegion, client_City

请注意,这些列包含该地区的县和市,因此您需要手动将其转换为特定地区。您可以使用Azure 区域页面在城市/国家和数据中心之间进行转换。例如,弗吉尼亚州的博伊顿是美国东部,德克萨斯州的圣安东尼奥是美国中南部。

希望这可以帮助,

阿萨夫

于 2016-11-06T06:23:09.853 回答
0

根据您的描述,我假设您的应用程序部署到属于特定数据中心的多个 Azure Web 应用程序(例如美国东部、美国西部、美国中南部等)。您可以利用Azure 流量管理器将请求分发到最近的数据中心,以获得最低的延迟。这是我的测试,你可以参考一下:

我创建了一个流量管理器并添加了两点:

1)命名的Web AppBruce-Chen-001托管在East Asia

2)命名的Web AppBruce-Chen-003托管在West US

通过访问我的流量管理器的 DNS 名称并直接浏览特定的 Web 应用程序,我可以从 Application Insights 获取请求数据,如下所示:

据我所知,名为的列cloud_RoleInstance指示运行您的应用程序的主机的身份。您可以尝试cloud_RoleInstance根据相关url列手动转换为特定区域。

于 2016-11-08T06:56:35.200 回答