# Qpid Management Features

Management tool: See our for details of how to use various console options with the Qpid management features.

The management of QPID is categorised into following types-

1. Exchange

2. Queue

3. Connection

4. Broker

1) Managing and Monitoring Exchanges: Following is the list of features, which we can have available for managing and monitoring an Exchange running on a Qpid Server Domain-

1. Displaying the following information for monitoring purpose-

   1. The list of queues bound to the exchange along with the routing keys.

   2. General Exchange properties(like name, durable etc).

2. Binding an existing queue with the exchange.

2) Managing and Monitoring Queues: Following are the features, which we can have for a Queue on a Qpid Server Domain-

1. Displaying the following information about the queue for monitoring purpose-

   1. General Queue properties(like name, durable, etc.)

   2. The maximum size of a message that can be accepted from the message producer.

   3. The number of the active consumers accessing the Queue.

   4. The total number of consumers (Active and Suspended).

   5. The number of undelivered messages in the Queue.

   6. The total number of messages received on the Queue since startup.

   7. The maximum number of bytes for the Queue that can be stored on the Server.

   8. The maximum number of messages for the Queue that can be stored on the Server.

2. Viewing the messages on the Queue.

3. Deleting message from top of the Queue.

4. Clearing the Queue.

5. Browsing the DeadMessageQueue - Messages which are expired or undelivered because of some reason are routed to the DeadMessageQueue. This queue can not be deleted. [Note: The is open because it depends on how these kind of messages will be handeled?]

3) Managing and Monitoring Connections: Following are the features, which we can have for a connection on a QPID Server Domain-

1. Displaying general connection properties(like remote address, etc.).

2. Setting maximum number of channels allowed for a connection.

3. View all related channels and channel properties.

4. Closing a channel.

5. Commit or Rollback transactions of a channel, if the channel is transactional.

6. Notification for exceeding the maximum number of channels.

7. Dropping a connection.

8. The work for implies that there are potentially some additional requirements

   1. Alert when tcp flow control kicks in

   2. Information available about current memory usage available through JMX interface

   3. Dynamic removal of buffer bounds? (fundamentally not possible with TransportIO)

   4. Management functionality added to JMX interface - UI changes?

4) Managing the Broker: Features for the Broker-

1. Creating an Exchange.

2. Unregistering an Exchange.

3. Creating a Queue.

4. Deleting a Queue.