Queue depth events
Queue depth events are related to the queue depth, that is, the number of messages on the queue.
In IBM MQ applications, queues must not become full. If they do, applications can no longer put messages on the queue that they specify. Although the message is not lost if this occurs, a full queue can cause considerable inconvenience. The number of messages can build up on a queue if the messages are being put onto the queue faster than the applications that process them can take them off.
The solution to this problem depends on the particular circumstances, but might involve:- Diverting some messages to another queue.
- Starting new applications to take more messages off the queue.
- Stopping nonessential message traffic.
- Increasing the queue depth to overcome a transient maximum.
Advance warning that problems might be on their way makes it easier to take preventive action. For this purpose, IBM MQ provides the following queue depth events:
- Queue Depth High events
- Indicate that the queue depth has increased to a predefined threshold called the Queue Depth High limit.
- Queue Depth Low events
- Indicate that the queue depth has decreased to a predefined threshold called the Queue Depth Low limit.
- Queue Full events
- Indicate that the queue has reached its maximum depth, that is, the queue is full.
A Queue Full Event is generated when an application attempts to put a message on a queue that has reached its maximum depth. Queue Depth High events give advance warning that a queue is filling up. This means that having received this event, the system administrator needs to take some preventive action. We can configure the queue manager such that, if the preventive action is successful and the queue depth drops to a safer level, the queue manager generates a Queue Depth Low event.
The first queue depth event example illustrates the effect of presumed action preventing the queue becoming full.
- Enable queue depth events
To configure a queue for any of the queue depth events you set the appropriate queue manager and queue attributes. - Shared queues and queue depth events on z/OS
On IBM MQ for z/OS, event monitoring is more straightforward for an application that uses shared queues if all the queue managers in the queue sharing group have the same setting for the PERFMEV attribute.
Parent topic: Performance events
Related concepts
Related information