rabbitmq / rabbitmq-management

RabbitMQ Management UI and HTTP API
https://www.rabbitmq.com/management.html
Other
370 stars 165 forks source link

Expose key individual health checks via HTTP API #844

Closed michaelklishin closed 4 years ago

michaelklishin commented 4 years ago

Team RabbitMQ's approach to health checks has changed in the last year. There is now a group of simple, focussed, composable health checks provided by CLI tools. They are yet to be exposed via the HTTP API, which currently only offers the original One True Health Check™ which has a number of well known downsides:

Given these changes in CLI tools, it makes sense to

The endpoint tentatively looks like this:

GET /api/health/checks/{check}

so, for example

Note that the checks will be executed on the local node. There is no option to run checks on a remote node as this feature makes little sense. CLI checks also work on the contacted node only.

This excludes the port_connectivity check since it makes no sense to run it on the node itself; CLI tools run it on the host where they are used, and HTTP API clients cannot do the same.

References #840.