我应该如何在 Azure 中为我的应用程序实施健康检查?

How should I approach the implementation of health checks in Azure for my application?

我想知道如何为某些 Azure 服务创建健康检查?这可能吗?我想创建时间触发的 Azure 函数来测试端到端连接,例如我的 Azure 存储、Azure 地图和事件中心,但如果我的 Azure 函数突然停止工作,它就会失败。 我想要某种 Cachethq,但对于我用于我的应用程序的所有 Azure 服务。 有这方面的最佳做法吗?

亲切的问候,

通常您会有一个端点来检查任何相关子系统的错误。这可能是 public 个可用的 /health 端点。 Asp.Net Core 等一些框架有 built-in support 用于健康检查。 像您建议的那样,http 触发的 Azure 功能也可以解决问题。

然后你需要像看门狗这样的东西,它在给定的时间间隔调用健康端点。在 Azure 中,您可以使用 availability test。如果需要,您可以根据此可用性创建警报,并创建显示给定时间段内状态的仪表板。

如果您使用 Azure Web App 托管您的应用程序,您可以使用内置的健康系统,如所述here

如果您的应用前面有负载均衡器或网关,您可以将 /health 端点用于那些 balancers/gateways.

的运行状况探测端点