如何为 Azure 虚拟机上运行的 Web 应用程序设置 healthprobe?

问题描述

应用程序状态:

  • 运行 apache 服务器的单个虚拟机。
  • 通过虚拟机的公共 IP 公开的应用程序(不在负载均衡器后面)

我有一个 healthprobe 端点正在运行,它需要每隔几秒进行一次探测以查看应用是否已启动,并在未启动时触发警报。

我有哪些选择?我想先启动并运行 healthprobe,然后再使用虚拟机规模集和负载均衡器。

解决方法

您需要像看门狗这样的东西,它可以在给定的时间间隔内调用运行状况端点。在 Azure 中,您可以使用 availability test。然后,您可以根据此可用性create alerts,并可选择创建显示给定时间段内状态的仪表板。

作为奖励,您可以将应用洞察资源集成到您的网络应用中,以获得详细的监控。见the docs

,

在虚拟机门户面板的支持+故障排除 -> 资源运行状况下,您可以设置运行状况警报。 然后,您可以选择应在哪些条件下触发警报。在您的情况下,当前资源状态:不可用 应该可以正常工作。您还可以在操作下实现自定义通知(电子邮件),或实现触发 Azure 函数或逻辑应用的逻辑,以便在 VM 不可用时执行操作。

要检测您在 Apache 服务器中的应用程序是否正常工作,您可以使用检查 Apache 错误日志的监控解决方案。