Drop health checks from WebExporter
What does this MR do and why?
This change removes code from WebExporter
that we used to use to perform health/readiness checks.
This has been deprecated for a while now because WebExporter
runs only in the puma primary, not in workers, and it is the workers that we want to health check. We now do this via HealthController
, as documented here: https://docs.gitlab.com/ee/user/admin_area/monitoring/health_check.html#health-check
Note that technically, WebExporter
still responds to /readiness
and /liveness
, since these are exposed by its base class, so what we remove are the probes invoked. We still need those endpoint for Sidekiq at the moment. We have a separate issue to extract those: #345804 (closed)
This change also helps decoupling WebExporter
from the main Rails apps, as we are looking to extract this into a separate process in &7304 (closed)
Screenshots or screen recordings
To verify that these endpoints really are unused, I leveraged a recent change where we introduced HTTP request metrics for the exporter server instances. The graph below shows that it is indeed only /metrics
we query for all webservice
instances:
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Related to #350546 (closed)