每秒 500 个遥测数据点限制在 Application Insights 中实际意味着什么?

What does the 500 telemetry data points per second limit actually mean in Application Insights?

this documentation page 上记录了 Application Insights 的以下限制:

Up to 500 telemetry data points per second per instrumentation key (that is, per application). This includes both the standard telemetry sent by the SDK modules, and custom events, metrics and other telemetry sent by your code.

但是它没有解释该限制的含义是什么?

a) 它是否缓冲和节流,但最终仍然保留所有数据?所以说 - 1000 个数据点在一秒钟内被推送 - 它会保留前 500 个,然后稍等片刻并推送另外 500 个?

b) 它只是 drop/not 记录数据吗?所以说 - 1000 个数据点在一秒钟内被推送,只有前 500 个会被持久化,而其他 500 个不会(永远)?

后者 (b) 需要注意的是,在这种情况下,所有数据都将开始受到限制,即一旦 RPC > 500(免费应用程序为 100,请参阅 https://azure.microsoft.com/en-us/documentation/articles/app-insights-data-retention-privacy/ 了解详细信息)是检测到后,它将开始拒绝来自数据收集端点上此检测密钥的所有数据,直到 RPC 速率回到 500 以下。

编辑:来自 Bret Grinslade 的更多信息:

当前的实现平均超过一分钟——所以如果您在 1 分钟 (500*60) 内发送 30K,它将限制您的应用程序。 HTTP 响应将告诉 SDK 稍后重试。如果传入速率从未下降,响应将告诉 SDK 丢弃数据。我们正在开发其他功能来改善这种体验——客户端的预聚合、改进的突发数据速率等。

在亚历克斯的回复之上有更多细节。当前的实现平均超过一分钟——因此,如果您在 1 分钟内发送 30K (500*60),它将限制您的应用程序。 HTTP 响应将告诉 SDK 稍后重试。如果传入速率从未下降,响应将告诉 SDK 丢弃数据。我们正在开发其他功能来改善这种体验——客户端上的预聚合、改进的突发数据速率等。

AI 现在具有 16K EPS 的摄取节流限制:https://docs.microsoft.com/en-us/azure/application-insights/app-insights-pricing