Service endpoints

/health

Our services all provide a /health endpoint which checks all dependencies are healthy (e.g. database connection) and returns a http status of 200 if everything is up and running.
The endpoint shouldn’t then call /health on any of the dependencies though as this will create cascading health checks so that one health check could call health checks in the dependencies, which could then call health checks in the dependencies etc.
This is called on a regular basis by our Pingdom check, which will then alert to us in slack in #dps_alerts if there are issues.
It is also called by the DPS Monitor at https://dps-monitor.prison.service.justice.gov.uk/health to provide a dashboard of all the DPS services health.

/ping

This is a simple check that will just return a http status of 200 if the application is up and running.
It is therefore entirely suited to be called by other applications’ health checks and also by kubernetes liveness and readiness probes if the application framework doesn’t provide specific endpoints.

/info

This provides basic information in a json format about the current application version, github commit reference and other useful application information.

This page was last reviewed on 04-Sep-2024, next review will be on 04-Dec-2024.