-
Notifications
You must be signed in to change notification settings - Fork 88
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[bugfix] AMQP consumers are not living up to expectations #210
Conversation
Hi, @renyansongno1. Thanks for the PR, should we update the plugin test scenario to verify the issue have been fixed or not? Because in the issue mentioned, sounds like we miss some scenario verify? |
ok, I will do it soon. |
@mrproliu I had modify scenario tests, in this tests, only need send more than 1 msg, if we can find these span, the code is work. |
Interception Point Modification
Since the Consumer function of AMQP091 returns a read-only chan structure, the previous agent logic reads this chan, causing the normal business logic to miss messages.
Therefore, after my consideration, interception can be performed before the message enters this chan to process the message for tracing.
Other Modification Points
Due to the definition of the AMQP protocol itself, after the client and broker establish a connection, communication is conducted using channels. Throughout the entire communication process, the message does not contain queue name information. Hence, it is necessary to obtain the relationship between ConsumerTag and queue when the Consumer function is called. In subsequent message bodies, the Queue can be mapped out through ConsumerTag.