Dan*_*elM 6 azure-api-management azure-application-insights azure-appservice
我们目前正在使用 Application Insights 的性能页面中的数据来监控 Web API,以便为我们提供每次操作收到的请求数。
我们的API解决方案的架构是使用APIM作为前端,应用服务作为后端。两个实例都启用了 App Insights,并且我们没有看到对 APIM 的请求数与对应用服务的请求数之间存在合理的相关性。此外,这仅在几次操作中最为明显。
例如,Apim-GetUsers 操作每天有 60,000 个请求(APIM 的 AI 实例)
AS-GetUsers 操作每天有 3,000,000 个请求(应用服务的 AI 实例)
Apim-GetUsers 将请求路由到 AS-GetUsers,并且 Apim-GetUsers 是唯一可以调用 AS-GetUsers 的操作。
鉴于此,我预计会在应用服务的 AI 性能页面上看到该操作的约 60,000 个请求,但我们看到的数字却很大。
我稍微研究了一下这个问题,发现有关采样的信息,以及一些 App Insights 功能使用 itemCount 属性来查找确切的请求数。总之,
我的期望是否正确,如果正确,可能是什么原因导致的?另外,禁用自适应采样并使用固定采样率会给我带来预期的结果吗?
我的期望是错误的吗?如果是的话,获得预期结果的好方法是什么?我不应该使用该指标的“性能”页面吗?
还没有尝试很多,因为在找到可行的解决方案之前我无法使用这些设置,但我研究了上面提到的采样和 itemCount 属性。APIM 采样设置为 100%。
我在 Log Analytics 中对请求表运行了一个查询,当我只使用请求计数时,我得到的数字更接近我在 APIM 中看到的数字,但是当我使用 itemCount 的总和时,正如一些 MS 所建议的那样文档中,我得到了性能页面中看到的巨大数字。
您正在使用的 NuGet 包和版本的列表:
运行时版本(例如net461、net48、netcoreapp2.1、netcoreapp3.1等。您可以从*.csproj文件中找到此信息):
托管环境(例如 Azure Web App、Linux、Windows、Ubuntu 等上的应用服务):
编辑1:操作_Id和itemCount的图片
归档时间: |
|
查看次数: |
1160 次 |
最近记录: |