Define a HealthCheck API in james-core
Then write a webadmin endpoint performing the checks and returning a 200 status code if all checks are allright or a 500 status if some checks are failing.
Authentication bypass is needed for that route.
Finally, implement a IsStartedHealthCheck.
You can base yourself on the IsStartedProbe defined here: https://github.com/linagora/james-project/pull/1646/commits/febb9f17cc0915f245e7a7f0fa9fcf8ed1750816