'Shelved' Queue State & Error Counts
In versions prior to 15, Connexion presented the following queue statistics / counts:
- Q (Queued count) - the total count of all messages with a status of 'Q' (for all time).
- P (Processed count) - the total count of messages processed today.
- E (Error count) - the total count of messages errored today.
- F (Filtered count) - the total count of messages filtered today.
While rolling the 'P' and 'F' counts to zero each midnight works well, rolling the error count to zero had the potential to mask misbehaving channels. For example, a queue may have been accumulating errors during off-hours, but when a user viewed the channel and/or dashboard, that channel showed an error count of zero.
To guard against this scenario, version 15 introduces two new features:
- ET - Total error count (for all time) is displayed with each queue / channel.
- New 'shelved' (S) queue state.
In addition to the existing queue error count, we now display a total error count beside the queue, in the channel header, and in the dashboard. Note that the total error count is only displayed if it differs from the standard error count. For example, if a channel errors 500 messages at 11 PM, the next day the queue will display E = 0 (today count), and ET = 500 (all time count).
When tracking the health of your Connexion deployment, you may monitor the dashboard for channels with an error count greater than zero. Any errored messages should be investigated and either reprocessed or acknowledged - bringing the error count back to zero. To support this workflow, Connexion now supports a 'shelved' queue state. If an errored message should not be reprocessed, it can be moved from the 'errored' state to the 'shelved' state.
Shelving messages follows the same workflow as moving a message to any other queue state. On the queue UI, select the individual messages to be shelved and then select the appropriate context menu item. You can also bulk shelve messages via the queue device icon context menu.
There are no restrictions of shelved messages and they can be changed to another queue type or reprocessed at any point.