FLX_BACKEND_RABBITMQ_004 Alert

Description

A critical alert is raised when one or more RabbitMQ Queue doesn't have any consumers assigned to them.

Severity

This alert is flagged as Critical.

Customer Impact

This alert is triggered when one or more RabbitMQ Queue doesn't have any consumers assigned to them. With no consumer assigned to a queue, the incoming message in the queue will pile up and will not get processed. Hence this will cause certain flex services to not perform their action causing other dependant services to log errors.

Depending on the impacted queue, flex functionality will be affected.

Flex uses the Rabbit MQ service to send data/messages between the different services.

No Consumer means that messages arrive in the Rabbitmq queue but are not being processed and they pile up. This also means there is a failed service that is not picking up the message from the queue.

Operational Remediation Process

Log in to one of the RabbitMQ servers and also enable local port forwarding to the RabbitMQ port 15672

$ ssh SERVER -L15672:localhost:15672

Open the web browser and log in to RabbitMQ GUI by keying http://localhost:15672

Click on the queue tab once logged in.

Search for the queue which has no consumer.

Try to restart the docker container associated with the queue. Eg: if the flex.indexelatic queue doesn't have the consumer assigned to it. Restarting the indexelastic container on the node will bring back the consumer online.

You need to restart the service if the health status is 'unhealthy' or 'down'

$ docker compose stop <exporter name>
$ docker compose start <exporter name>