跳转到内容
搜索文档

Cloudflare 如何计算隧道健康警报

最后更新 查看 MarkdownAgent 设置

隧道健康警报在您的隧道连接可靠性降至可接受的阈值以下时通知您。了解 Cloudflare 如何计算这些警报有助于您解读通知,并区分短暂且可恢复的问题与需要关注的持续性问题。

Cloudflare 使用结合了短期和长期指标的多窗口方法,以避免对瞬时问题发送警报,同时仍能检测到真正的降级。以下各节解释了此过程背后的核心概念。

服务级别指标 (SLI)

SLI 是正面事件与总事件的比率。0% 的 SLI 意味着该功能完全不工作,而 100% 的 SLI 意味着该功能完全按预期工作。

服务级别目标 (SLO)

SLO 是 SLI 的阈值,并为 IPsec/GRE 隧道设定了目标可靠性水平。例如,SLO 可以是过去 30 天内 99.9% 的隧道状态保持健康。Cloudflare 根据 down 隧道状态值 来计算 SLO 的 SLI 值,而不是根据隧道健康检查的超时结果。

错误预算(Error budget)

错误预算是指在将服务维持在 SLO 定义的可用性水平的同时,在 SLO 时间窗口内可能发生的不成功事件的数量。

SLO 是一个目标百分比,而错误预算等于 100% 减去 SLO。例如,假设在 30 天内,您的账户中进行了 100 万次隧道健康检查,且您的 SLO 设置为 99.9%。在这种情况下,错误预算将为:

事件数量 x (1 - SLO) = 1,000,000 x (1-0.999) = 1,000

这意味着 SLO 允许在 30 天内发生 1,000 次不成功的隧道健康检查。然而,如果所有错误都在一小时内发生而不是在 30 天内分摊,会发生什么?这就引入了消耗率(burn rate)的概念。

消耗率(Burn rate)

消耗率衡量的是,与 SLO 窗口相比,您在给定的时间窗口内消耗错误预算的速度。在示例中,99.9% 的 SLO 意味着您可以在 30天内观察到 1,000 次隧道健康检查失败。然而,在一小时内发生同样的 1,000 次健康检查失败是不可接受的。

Cloudflare 何时向您发送警报

为了确定何时发送隧道健康警报,Cloudflare 依赖于多窗口、多消耗率的方法。每隔五分钟,Cloudflare 就会分析过去一小时和过去五分钟的数据。Cloudflare 计算数据短期窗口(五分钟)和长期窗口(一小时)的 SLI。

只有当短期和长期窗口都未达到配置的阈值时,Cloudflare 才会向您发出警报。这意味着两个窗口必须都未通过阈值才会触发警报。例如,如果您定义了 99% 的阈值:

  • 短期窗口:99.2%,长期窗口:99%。Cloudflare 不会触发警报,因为短期窗口超过了 99% 的阈值。
  • 短期窗口:98%,长期窗口:98%。Cloudflare 将触发警报,因为两个窗口都未达到 99% 的阈值。

这篇文档对您有帮助吗?