About health-check-endpoints
A skill for developers implementing health check endpoints to report service health, dependencies, and readiness for traffic. It includes guidance and reference implementations for several frameworks.
Key features
- 01Monitor service health and dependencies
- 02Separate liveness and readiness probes
- 03Reference guides for multiple frameworks
- 04Guidance on timeouts and result caching
Use cases
- 01Configure Kubernetes liveness and readiness probes
- 02Provide health checks for load balancers
- 03Verify deployments and monitor failures
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill health-check-endpointsAfter installing, type/health-check-endpointsin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/expressjs-health-checks.mdpython-flask-health-checks.mdspring-boot-actuator-style-java.mdscripts/validate-config.shtemplates/config-starter.yamlDetails
From the project READMEHealth Check Endpoints
Table of Contents
Overview
Implement health check endpoints to monitor service health, dependencies, and readiness for traffic.
When to Use
- Kubernetes liveness and readiness probes
- Load balancer health checks
- Service discovery and registration
- Monitoring and alerting systems
- Circuit breaker decisions
- Auto-scaling triggers
- Deployment verification
Quick Start
Minimal working example:
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)
Reference Guides
Detailed implementations in the references/ directory:
| Guide | Contents |
|---|---|
| Express.js Health Checks | Express.js Health Checks |
| Spring Boot Actuator-Style (Java) | Spring Boot Actuator-Style (Java) |
| Python Flask Health Checks | Python Flask Health Checks |
Best Practices
✅ DO
- Implement separate liveness and readiness probes
- Keep liveness probes lightweight
- Check critical dependencies in readiness
- Return appropriate HTTP status codes
- Include response time metrics
- Set reasonable timeouts
- Cache health check results briefly
- Include version and environment info
- Monitor health check failures
❌ DON'T
- Make liveness probes check dependencies
- Return 200 for failed health checks
- Take too long to respond
- Skip important dependency checks
- Expose sensitive information
- Ignore health check failures
Comments
Markdown supported