There are a number of Performance Monitor counters that you can use to gauge the health of the Exchange Server 2007 transport queue. The Performance Monitor counters explained in this tip apply to the mail queue
MSExchangeTransport Queues(_total)\Aggregate Delivery Queue Length (All Queues) counter -- This counter displays the total number of messages currently queued for delivery. According to Microsoft, this counter should remain below 3,000 messages and never exceed 5,000 messages. The hub transport server uses multiple queues for various purposes, so use other counters to monitor these queues individually.
MSExchangeTransport Queues(_total)\Active Remote Delivery Queue Length counter -- This counter shows you the number of messages in the Active Remote Delivery Queue. There should be less than 250 messages in this queue at one time. There should also be less than 250 messages in the Active Mailbox Queue, which you can monitor through the MSExchangeTransport Queues(_total)\Active Remote Delivery Queue Length counter.
Active Non-SMTP Delivery Queue -- Foreign mail connectors use this queue. This queue should never exceed 250, and you can monitor it through the MSExchangeTransport Queues(_total)\Active Non-SMTP Delivery Queue Length counter.
MSExchangeTransport Queues(_total)\Largest Delivery Queue Length counter -- This counter displays how many messages are in the largest delivery queue. Microsoft recommends that this counter never exceeds 200.
There are also several hub transport server-related queues with a recommended maximum queue length of 100. These queues include:
- The Retry Non-SMTP Delivery Queue (MSExchangeTransport Queues(_total)\Retry Non-SMTP Delivery Queue Length)
- The Retry Mailbox Delivery Queue (MSExchangeTransport Queues(_total)\Retry Mailbox Delivery Queue Length)
- The Retry Remote Delivery Queue (MSExchangeTransport Queues(_total)\Retry Remote Delivery Queue Length)
- The Unreachable Queue (MSExchangeTransport Queues(_total)\Unreachable Queue Length)
- The Submission Queue (MSExchangeTransport Queues(_total)\Submission Queue Length)
These queues are limited to a lower number because most of them are error queues. For instance, the Retry queues reflect the number of messages in a retry state for the associated queue. The Unreachable Queue displays the number of messages that are unable to reach their destinations.
The Submission Queue has a limit of 100, but it isn't an error queue. If more than 100 messages accumulate in this queue, it indicates a bottleneck or other performance-related problem on either a domain controller or mailbox server.
The MSExchangeTransport Queues(_total)\Poison Queue Length counter measures the number of poison messages in the queue. This counter should be 0 at all times.
As you can see, there are a lot of different Performance Monitor counters relevant to Exchange 2007. If you'd like to read about even more Performance Monitor counters, Microsoft provides a comprehensive list on their site.
About the author: Brien M. Posey, MCSE, is a five-time recipient of Microsoft's Most Valuable Professional (MVP) award for his work with Exchange Server, Windows Server, Internet Information Services (IIS), and File Systems and Storage. Brien has served as CIO for a nationwide chain of hospitals and was once responsible for the Department of Information Management at Fort Knox. As a freelance technical writer, Brien has written for Microsoft, TechTarget, CNET, ZDNet, MSD2D, Relevant Technologies and other technology companies. You can visit Brien's personal website at www.brienposey.com.
Do you have comments on this tip? Let us know.
Please let others know how useful this tip was via the rating scale below. Do you know a helpful Exchange Server, Microsoft Outlook or SharePoint tip, timesaver or workaround? Email the editors to talk about writing for SearchExchange.com.
This was first published in October 2009