Agent Skills: Health Check Endpoints

Implement comprehensive health check endpoints for liveness, readiness, and dependency monitoring. Use when deploying to Kubernetes, implementing load balancer health checks, or monitoring service availability.

UncategorizedID: aj-geddes/useful-ai-prompts/health-check-endpoints

Install this agent skill to your local

pnpm dlx add-skill https://github.com/aj-geddes/useful-ai-prompts/tree/HEAD/skills/health-check-endpoints

Skill Files

Browse the full folder contents for health-check-endpoints.

Download Skill

Loading file tree…

skills/health-check-endpoints/SKILL.md

Skill Metadata

Name
health-check-endpoints
Description
>

Health 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