mcpField
H
health-check-endpoints

health-check-endpoints

github.com/aj-geddes云与 DevOps373456 次安装34 周前更新
代码仓库

关于 health-check-endpoints

为开发者提供健康检查端点的设计与实现指导,涵盖服务状态、依赖项和流量就绪情况,并附有多种框架的参考实现。

主要功能

  1. 01监控服务状态与依赖项
  2. 02区分存活和就绪探针
  3. 03提供多框架参考指南
  4. 04建议超时与结果缓存

适用场景

  1. 01配置 Kubernetes 存活和就绪探针
  2. 02为负载均衡器提供健康检查
  3. 03验证部署并监控故障

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill health-check-endpoints

安装后在 Claude Code 中输入/health-check-endpoints确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
expressjs-health-checks.md
python-flask-health-checks.md
spring-boot-actuator-style-java.md
scripts/
validate-config.sh
templates/
config-starter.yaml

详细介绍

健康检查端点

目录

概述

实现健康检查端点,以监控服务健康状况、依赖项以及接收流量的就绪状态。

适用场景

  • Kubernetes 存活探针和就绪探针
  • 负载均衡器健康检查
  • 服务发现与注册
  • 监控与告警系统
  • 熔断器决策
  • 自动扩缩容触发条件
  • 部署验证

快速开始

最简可运行示例:

import express from "express";
import { Pool } from "pg";
import Redis from "ioredis";

interface HealthStatus {
  status: "healthy" | "degraded" | "unhealthy";
  timestamp: string;
  uptime: number;
  checks: Record<string, CheckResult>;
  version?: string;
  environment?: string;
}

interface CheckResult {
  status: "pass" | "fail" | "warn";
  time: number;
  output?: string;
  error?: string;
}

class HealthCheckService {
  private startTime = Date.now();
  private version = process.env.APP_VERSION || "1.0.0";
  private environment = process.env.NODE_ENV || "development";

// ... (see reference guides for full implementation)

参考指南

references/ 目录中的详细实现:

指南内容
Express.js 健康检查Express.js 健康检查
Spring Boot Actuator 风格(Java)Spring Boot Actuator 风格(Java)
Python Flask 健康检查Python Flask 健康检查

最佳实践

✅ 应该
  • 实现独立的存活探针和就绪探针
  • 保持存活探针轻量
  • 在就绪探针中检查关键依赖项
  • 返回适当的 HTTP 状态码
  • 包含响应时间指标
  • 设置合理的超时时间
  • 短暂缓存健康检查结果
  • 包含版本和环境信息
  • 监控健康检查失败情况
❌ 不应该
  • 让存活探针检查依赖项
  • 健康检查失败时仍返回 200
  • 响应耗时过长
  • 跳过重要的依赖项检查
  • 暴露敏感信息
  • 忽视健康检查失败情况

评论

支持 Markdown