Question
Tirthankar Bachhar · Nov 4, 2016

Ensemble Business Operation QueueCountAlert

As per the documentation of QueueCountAlert:
Number of messages on this item's queue needed to trigger an Alert message to be sent. Note that no further alerts will be sent unless the number of messages on the queue drops below 80% of this number and then rises again to this number.
Note that this alert will be sent even if AlertOnError is False.
Zero means no alerts of this type will be sent.

Now, the question is,
If QueueCountAlert is set to 10, and the queue size become 11 we will be getting email once.
Now, if queue count does not decrease, and keeps increasing further after sometime, how do we generates alert further?
How can we set a rule to escalated alert in case queue count does not comes down?

Is there any other recommended way to keep monitoring queue size using any out of the box functionality?

Please let me know if you need any further details.

0
0 348
Discussion (6)2
Log in or sign up to continue

Docs on Ens.BusinessOperation class, QueueCountAlert property state:

Number of messages on this item's queue needed to trigger an Alert message to be sent. Note that no further alerts will be sent unless the number of messages on the queue drops below 80% of this number and then rises again to this number. Note that this alert will be sent even if AlertOnError is False. Zero means no alerts of this type will be sent.

Thanks for your response.  I have quoted the same in my post as well. how do I get an alert if the queue size does not comes down even after long time. which might be because of some issues to be looked upon. On this sceneries how do we configure to get an alert.

I don't think there is a way to repeatedly receive queue count alerts if the queue remains high.

What you could do is use Managed Alerts rather than simple alerts and you can configure the managed alert to repeatedly send notification emails until the person responsible closes the alert.

Doing it this way will require a person to actually look at the queue and either verify it's gone down and close the alert, or take action to reduce the queue.

As the documentation says QueueCountAlert is only to monitor queue for the configured number of threshold limit. It is not designed for monitoring the queue that either only keeps growing or stopped processing messages (though the queue count may also be an indication of this).

QueueWaitAlert can be used to alert if the messages are not processed or slower than usual. But this doesn't monitor for growing queues primarily. This checks for the first message in the queue on how long it is in the queue and alerts if the queue waiting time is more than the configured threshold on QueueWaitAlert. 

Managed Alerts can be also used which is a work flow based alert management.

Alternative is to create a custom service (refer OnProcessInput method in Ens.MonitorService.cls) to implement the required Monitoring to the production.

Hey thanks for your response again. Managed alert will keep notifying in case no action is taken, and escalation level is increased, that I have implemented.

But in this scenario, I believe I'll have to extend Ens.MonitorService.cls and write the custom code to monitor the queue count if its increasing even after crossing the threshold.