This week, we’ll explore the last pattern in the EIPinCPI blog series known as Channel Purger.
Channel Purger, as the name suggests is used to remove messages from the Channel. The message may have been put there because the developer was debugging and the message contents are not correct because of a programming error. Another example is where the mapping has changed, so the current messages in the channel need to have the latest structure or latest data from the source system and need to be fetched again. In both cases, one may need to purge the messages already present in the channel either by choosing individually or simply purge the entire channel.
In CPI, the channel can be purged using the User Interface.
Purging all messages in the Channel
All messages in the channel can be purged by clicking on the Action Button and clicking the Delete button. Note that this option deletes the queue as well. This means that unless one of the producer flows are redeployed the enqueue operation will keep failing.
Please note, I have hidden the other queues for confidentiality in the screenshot.
Purging Selected Messages from the Channel
Purging the Selected Message is as simple as switching to the Multi-Select Mode (1), selecting the message (2), and clicking on the Delete button (3).
Please note, I have removed part of the JMS Message ID for confidentiality in the screenshot.
Purging the Message by Message ID
Generally, when debugging, the problematic Message ID is known either because an email was triggered for the message and Message-ID was quoted in the email or you found the erratic message through monitoring.
The Message-ID can be used to filter the view easily by pasting the Message-ID in the ‘Filter by Message ID’ search box and then deleting the message the same way as shown in section ‘Purging Selected Messages from the Channel’.
With the great UI, the Channel Purger pattern has been implemented with powerful functionality in CPI. Therefore, a rating of 10 out of 10 is justified.
Channel Purger is a useful pattern when erroneous messages need to be removed from channels to restart the usual flow. CPI has a great UI through which messages can be purged.
Hope this helps,