我正在消耗计划上运行Azure功能应用程序,并且我想监视当前正在运行的实例数量。使用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.
我使用azure性能测试(500users * 10分钟)发送http请求,然后得到相同的结果(从REST API实例计数似乎是正确的(从1到12缩放)发送停止后,报告的实例数会迅速下降(最终回到1,而处理器仍然很忙)' –