This topic describes the error codes returned when a Message Queue for RabbitMQ client calls AMQP methods. You can troubleshoot errors based on the error messages and solutions provided in this topic.
Caused by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close> (reply-code=404, reply-text=ExchangeNotExist, ReqId:5FB4C999314635F952FCBFF6, ErrorHelp[dstQueue=XXX_test_queue, srcExchange=Producer.ExchangeName,bindingKey=XXX_test_bk, http://mrw.so/6rNqO8], class-id=50, method-id=20) at com.rabbitmq.client.impl.ChannelN.asyncShutdown(ChannelN.java:516) at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:346) at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:182) at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:114) at com.rabbitmq.client.impl.AMQConnection.readFrame(AMQConnection.java:672) at com.rabbitmq.client.impl.AMQConnection.access$300(AMQConnection.java:48) at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:599) at java.lang.Thread.run(Thread.java:748)
|reply-code||The returned status code.||404|
|reply-text||The returned message.
||reply-text=ExchangeNotExist, ReqId:5FB4C***************, ErrorHelp[dstQueue=XXX_test_queue,srcExchange=Producer.ExchangeName,bindingKey=XXX_test_bk,http://mrw.so/6rNqO8]|
|class-id||The ID of the class. This parameter is used in the same way as in open source RabbitMQ.||50|
|method-id||The ID of the method. This parameter is used in the same way as in open source RabbitMQ.||20|
|200||The status code returned because the request is successful.||None.|
|403||The status code returned because you are not authorized to perform the operation.||Make sure that the required permissions are granted to your Resource Access Management (RAM) user. For more information, see RAM policies.|
|404||The status code returned because the specified resource does not exist.||Make sure that the required resource exists and is in the desired state.|
|406||The status code returned because the precheck fails.
Note In most cases, the precheck fails because you assign an invalid value to a parameter when you call an AMQP method. For example, you may assign a null value to a non-null parameter, or you may assign a different value to the same parameter when you redeclare a resource.
|Make sure that the input parameters are correctly set when you call the AMQP method.|
|503||The status code returned because the command is invalid.||Do not use AMQP methods and exchange types that are not supported by Message Queue for RabbitMQ.|
|530||The status code returned because the operation is not allowed.||We recommend that you throttle the traffic to make sure that your use of Message Queue for RabbitMQ does not exceed the limits. For more information, see Limits.|
|541||The status code returned because an internal error has occurred on the broker.||After you locate the issue based on the response, submit a ticket to contact the technical support team of Message Queue for RabbitMQ.|