The backend health monitor is another container in the wdqs pod (see T425007) which provides two functions to begin with:
- On startup it compares the timestamp in the wikidata_index_meta.json file with the timestamp in the index itself (see data-reload.py for how to query the timestamp)
- Expose a startup endpoint (as in Kubernetes startup probe) which verifies the consumer update lag against a configured threshold. This will ultimately be used to verify whether the pod can be pooled and receive requests.
The health service is supposed to be implemented as a Quarkus Java application (similar to wdqs-proxy).
AC:
- New Quarkus service which can read the update lag from the consumer (configurable endpoint)
- The service compares timestamps and fails if they differ
- Gitlab CI/CD pipeline to build a docker image
- Published 0.0.1 version of the docker image