A Rails plugin that adds a health checking and monitoring API for databases, caches, queues, and other services.
Health Monitor Rails is a Ruby gem that adds a health monitoring API to Rails applications. It provides a mountable engine that exposes a `/check` endpoint to verify the status of various services like databases, caches, Redis, and background job queues. The plugin helps ensure application reliability by allowing external monitoring tools to assess the health of critical dependencies.
Rails developers and DevOps engineers who need to monitor the health of their application's dependencies for uptime, load balancing, and alerting purposes.
It offers a standardized, configurable way to implement health checks in Rails apps without building custom endpoints, with support for multiple providers, output formats, and integration with monitoring systems like Nagios.
A Rails plugin which provides a health checking and monitoring API of various services and application aspects.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Monitors databases, Redis, caches, and job queues like Sidekiq and Resque out-of-the-box, with configurable thresholds for latency and memory usage as shown in the README examples.
Allows marking providers as non-critical so failures don't affect overall health status, enabling monitoring of auxiliary services without false alarms.
Returns health status in HTML, JSON, or XML via a single endpoint, making it easy to integrate with tools like Nagios or custom dashboards.
Supports custom providers, error callbacks, and authentication, allowing teams to tailor checks to their specific infrastructure needs.
Only the database check is enabled by default; adding other providers requires explicit setup in an initializer, which can be tedious for complex multi-service setups.
As a mountable Rails engine, it cannot be used with other Ruby web frameworks, limiting its utility in polyglot or non-Rails environments.
While it covers common dependencies, support for newer technologies (e.g., Kafka, GraphQL) is absent without custom provider development, as admitted in the README's extension section.