Open
Description
Currently it is not possible to enable the alertmanager module when cortex is run as a single binary. This is caused by conflicts under the /api/prom
route.
One option I would like to suggest to rectify this change is updating the routing scheme for the alertmanager to fall under /alertmanager
. I think this format would make more sense overall. I also think the prometheus api should exist under /prometheus
. I think this naming scheme would make more sense for two reasons:
/api/prom/api/*
routes seem clunky to me with the repetition ofapi
/<service>/api/*
provides a sensible api scheme that reflects the underlying endpoints. This would also allow for endpoints with the same routes to exist in the same binary. For instance both the alertmanager and prometheus api have a/api/v1/alerts
endpoint.
The alternative would be matching /api/prom
with a /api/alert
route, or something along those lines. I think either approach would work. Although I think the /alertmanager
route prefix seems better to me.