我在 Consumption Plan 上运行 Azure Function 应用,我想监控当前运行的实例数量。使用格式的 REST API 端点
https://management.azure.com/subscriptions/{subscr}/resourceGroups/{rg}
/providers/Microsoft.Web/sites/{appname}/instances?api-version=2015-08-01
我能够检索实例。但是,结果与我在 Application Insights / Live Metrics Stream 中看到的信息不匹配。
例如,现在 App Insights 显示 4 台服务器在线,而 API 调用仅返回一个(这 1 个实例的 GUID 也在 App Insights guid 中)。
我可以信任谁?有没有更好的方法来获取实例计数(例如来自 App Insights)?
更新:看起来来自 REST API 的数据是错误的。
我正在向队列发送 10000 条消息,使用处理请求的相应实例 ID 记录每个函数调用。
虽然消息不断涌入,积压工作不断增加,但来自 REST API 的实例计数似乎是正确的(从 1 扩展到 12)。发送停止后,报告的实例计数迅速下降(最终回到 1,而处理器仍处于忙碌状态)。
但根据速度和执行日志,我可以看出实际实例数一直在增长,并在最后一条消息处理时达到 15 个实例。
UPDATE2:SDK 似乎拒绝报告超过 20 台服务器。该指标持平于 20,而 App Insights 保持稳定增长并已显示为 41。