A simple, extensible, and concurrent health-check library for Go services with RESTful API endpoints.
Healthcheck is a Go library that implements a RESTful health-check API for monitoring the health of Go services. It solves the problem of unreliable health endpoints by testing all mandatory dependencies like databases, caches, and external services, providing accurate status to load balancers or external monitoring tools.
Go developers building microservices or distributed systems who need reliable health-check endpoints for load balancers, container orchestration, or service monitoring.
Developers choose Healthcheck for its simplicity, extensibility, and concurrent execution, allowing easy integration of custom dependency checks while distinguishing between critical and non-critical failures for accurate health reporting.
An simple, easily extensible and concurrent health-check library for Go services
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Runs dependency checks concurrently for performance efficiency, as highlighted in the README's key features.
Distinguishes between critical checkers that fail the status and non-critical observers, allowing nuanced health reporting as shown in the example with diskspace.
Custom checkers can be added via the Checker interface or CheckerFunc, making it adaptable to various dependencies like databases or external services.
Provides an http.Handlefunc for quick setup as a health-check endpoint, as demonstrated in the example with Gorilla mux.
Only includes basic checkers like heartbeat and disk space; most dependency checks require custom implementation, increasing development overhead.
Lacks features such as health metrics aggregation, retry logic, or historical data, which are essential for comprehensive monitoring in production systems.
Designed solely for RESTful endpoints, making it unsuitable for services using other protocols like gRPC for health checks without additional work.