-
Epic
-
Resolution: Done
-
Normal
-
None
-
None
-
Move the metrics endpoint to a separate port/endpoint/listener
-
False
Currently the metrics endpoint is part of the composer-api. The metrics endpoint should be separate from both the composer-api and the worker-api.
It needs a separate listener, and can run on an arbitrary port. The endpoint needs to be `/metrics` like before, and needs to be plain http. It is not intended to be exposed to the wider internet.
Changing this should happen in a staggered way, so that it doesn't break the current deployment:
- Add the new listener/endpoint (make sure the update the container entrypoint file as well), but keep the current one in place
- Make the necessary changes in app-interface to our servicemonitor: https://gitlab.cee.redhat.com/service/app-interface/-/blob/master/resources/observability/servicemonitors/image-builder.servicemonitor.yml . Make it scrape both endpoints.
- Update our openshift templates https://github.com/osbuild/osbuild-composer/tree/main/templates with a new Service and container port for the new endpoint.
- Once merged and up and running, remove the old endpoint from the service monitor so it stops scraping that one, and remove it from our templates; and remove the endpoint from the composer-api httpmux.