我们目前正在迁移到Azure的过程中,我们设置了3个环境(dev、stage、prod),这个问题只发生在prod中,而prod是唯一使用自动缩放的环境,所以我假设它与此有关。
我已经设置了应用服务计划并部署了多个具有自动缩放功能的应用程序 (dotnet),并且“始终开启”配置已关闭。我还设置了 App Insights 并将所有应用程序连接到此。
由于某种原因,每个应用程序每 13 秒就会被 ping 一次 http://appname.azurewebsites.net/admin/host/ping,这显然会导致响应 404 并污染日志。
有谁知道为什么会这样?我怎样才能阻止这个?
我尝试过停止、重新启动应用程序,也尝试过关闭/打开“始终开启”,但没有什么区别。似乎也找不到任何可能执行此操作的警报。
当应用服务计划使用自动缩放时,请求来自负载均衡器。禁用自动缩放,这个问题就会消失。
由于某种原因,每个应用程序每 13 秒就会被 ping 一次 http://appname.azurewebsites.net/admin/host/ping,这显然会导致响应 404 并污染日志。
这是由Azure Application Insights的“可用性”监控功能引起的。 Azure Application Insights 定期向应用程序的端点发送 HTTP 请求,以检查其可用性和响应能力。
如果您不希望将这些可用性 ping 发送到您的应用程序,您可以禁用 Azure Application Insights 中的“可用性”监视功能。
在函数应用中打开您的应用程序见解并导航到调查部分,然后单击可用性请检查下面。
输入您想要对其可用性执行 ping 操作的应用程序端点的 URL,并将测试的“启用”选项设置为“禁用”。
修改可用性测试以使用不存在的不同端点或以 HTTP 200 状态代码进行响应。
我的自动缩放功能也有同样的问题,该功能仍处于预览模式。我将其关闭并改用基于规则的自动缩放。这解决了问题,ping 消失了。我希望他们很快就能修复自动缩放功能,因为这是一个不错的选择。