知识卡片

/health端点设计中容易被忽略的实践要点

专业/工作 · 1218.f

内容

实现[[health端点模式的核心理念与三个价值|/health端点]]时有几个细节决定它是否真正好用:应该复用应用已有的数据库等连接配置,避免端点和应用主体走两套不同的鉴权逻辑;正常状态一定要返回 HTTP 200,异常状态返回非200(如503 Service Unavailable),这样调用方无需解析文本就能判断结果;如果要返回内容,优先用 JSON 这类结构化格式而非纯文本,方便机器解析;端点应该作为应用自身的一个路径而不是独立部署的另一个应用,否则监控和应用的发布就会脱节,违背了这个模式本身的意义;出于安全考虑,通常在 Web 服务器层限制只有特定来源地址能访问该端点。另一个容易被忽视的权衡是:依赖检查越深入全面(检查MySQL、Redis、外部API等),一旦端点报错就越难第一时间定位到底是哪个依赖出的问题,过度复杂化反而会让排障变得更麻烦。

参考来源

《监控运维实践 原则与策略-2021》第7章《应用程序监控》