We recently introduced heathChecks, allowing to test the health of a component.
Results are aggregated and exposed over WebAdmin.
As of today, only 2 health checks are implemented: Guice (stop/start) and RabbitMQ
We would need health checks for other components, including:
Critical services (if they are failing the service is unhealthy)
Optional services (if they are failing, the service is degraded)
In order to test these services, we need to execute some sample requests.
We would also need to bind these health-checks in guice products where appropriate.
Please open a separate pull request per health check...
We do stay at your full disposal on Gitter to answer related questions (https://gitter.im/apache/james-project)